home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
AmigActive 2
/
AACD 2.iso
/
AACD
/
Magazine
/
GraphicsCards
/
StormMesa
/
src
/
readpix.s
< prev
next >
Wrap
Text File
|
1999-02-04
|
107KB
|
6,070 lines
; Storm C Compiler
; Work2:Mesa3/Mesa-3.0/src/readpix.c
mc68030
mc68881
XREF _gl_read_stencil_span
XREF _gl_read_rgba_span
XREF _gl_map_stencil
XREF _gl_shift_and_offset_stencil
XREF _gl_map_ci_to_color
XREF _gl_map_ci
XREF _gl_shift_and_offset_ci
XREF _gl_map_color
XREF _gl_scale_and_bias_color
XREF _gl_pixel_addr_in_image
XREF _gl_components_in_format
XREF _gl_sizeof_type
XREF _gl_swap4
XREF _gl_swap2
XREF _gl_error
XREF _gl_problem
XREF _q_memcpy
XREF _CC
SECTION "_read_index_pixels:0",CODE
;static void read_index_pixels( GLcontext *ctx,
_read_index_pixels
L665 EQU -$191C
link a5,#L665
movem.l d2-d7/a2/a3,-(a7)
movem.l $14(a5),d2/d5/d7/a3
move.l $10(a5),d4
move.l $8(a5),a2
L614
; if (ctx->Visual->RGBAflag)
move.l $8F8(a2),a0
tst.b (a0)
beq.b L616
L615
; gl_error( ctx, GL_INVALID_OPERATION, "glReadPixels" );
move.l #L612,-(a7)
pea $502.w
move.l a2,-(a7)
jsr _gl_error
add.w #$C,a7
movem.l (a7)+,d2-d7/a2/a3
unlk a5
rts
L616
; for (j=0;
moveq #0,d3
bra L663
L617
; (*ctx->Driver.ReadCI32Span)( ctx, width, x, y, index );
pea -$1908(a5)
move.l d4,-(a7)
move.l $C(a5),-(a7)
move.l d2,-(a7)
move.l a2,-(a7)
move.l $94C(a2),a0
jsr (a0)
add.w #$14,a7
; if (ctx->Pixel.IndexShift!=0 || ctx->Pixel.IndexOffset!=
move.l a2,a0
add.l #$B168,a0
tst.l $2E(a0)
bne.b L619
L618
move.l a2,a0
add.l #$B168,a0
tst.l $32(a0)
beq.b L620
L619
; gl_shift_and_offset_ci( ctx, width, index);
pea -$1908(a5)
move.l d2,-(a7)
move.l a2,-(a7)
jsr _gl_shift_and_offset_ci
add.w #$C,a7
L620
; if (ctx->Pixel.MapColorFlag)
move.l a2,a0
add.l #$B168,a0
tst.b $36(a0)
beq.b L622
L621
; gl_map_ci(ctx, width, index);
pea -$1908(a5)
move.l d2,-(a7)
move.l a2,-(a7)
jsr _gl_map_ci
add.w #$C,a7
L622
; dest = gl_pixel_addr_in_image(&ctx->Pack, pixels,
clr.l -(a7)
move.l d3,-(a7)
clr.l -(a7)
move.l d7,-(a7)
pea $1900.w
move.l d5,-(a7)
move.l d2,-(a7)
move.l a3,-(a7)
move.l a2,a0
add.l #$E644,a0
pea (a0)
jsr _gl_pixel_addr_in_image
add.w #$24,a7
move.l d0,a0
; switch (type)
move.l d7,d0
sub.l #$1400,d0
cmp.l #6,d0
bhi L661
move.l L666(pc,d0.l*4),a1
jmp (a1)
L666
dc.l L627
dc.l L623
dc.l L637
dc.l L631
dc.l L649
dc.l L643
dc.l L655
;
L623
; GLubyte *dst = (GLubyte *) dest;
; for (i=0;
moveq #0,d0
bra.b L625
L624
; *dst++ = (GLubyte) index[i];
lea -$1908(a5),a1
move.b 3(a1,d0.l*4),d1
move.b d1,(a0)+
addq.l #1,d0
L625
cmp.l d2,d0
blt.b L624
L626
;
bra L662
L627
; GLbyte *dst = (GLbyte *) dest;
move.l a0,a1
; for (i=0;
moveq #0,d0
bra.b L629
L628
; dst[i] = (GLbyte) index[i];
lea -$1908(a5),a0
move.b 3(a0,d0.l*4),d1
move.b d1,0(a1,d0.l)
addq.l #1,d0
L629
cmp.l d2,d0
blt.b L628
L630
;
bra L662
L631
; GLushort *dst = (GLushort *) dest;
move.l a0,a1
; for (i=0;
moveq #0,d0
bra.b L633
L632
; dst[i] = (GLushort) index[i];
lea -$1908(a5),a0
move.w 2(a0,d0.l*4),d1
move.w d1,0(a1,d0.l*2)
addq.l #1,d0
L633
cmp.l d2,d0
blt.b L632
L634
; if (ctx->Pack.SwapBytes)
move.l a2,a0
add.l #$E644,a0
tst.b $18(a0)
beq L662
L635
; gl_swap2( (GLushort *) dst, width );
move.l d2,-(a7)
move.l a1,-(a7)
jsr _gl_swap2
addq.w #$8,a7
L636
;
bra L662
L637
; GLshort *dst = (GLshort *) dest;
move.l a0,a1
; for (i=0;
moveq #0,d0
bra.b L639
L638
; dst[i] = (GLshort) index[i];
lea -$1908(a5),a0
move.w 2(a0,d0.l*4),d1
move.w d1,0(a1,d0.l*2)
addq.l #1,d0
L639
cmp.l d2,d0
blt.b L638
L640
; if (ctx->Pack.SwapBytes)
move.l a2,a0
add.l #$E644,a0
tst.b $18(a0)
beq L662
L641
; gl_swap2( (GLushort *) dst, width );
move.l d2,-(a7)
move.l a1,-(a7)
jsr _gl_swap2
addq.w #$8,a7
L642
;
bra L662
L643
; GLuint *dst = (GLuint *) dest;
move.l a0,a1
; for (i=0;
moveq #0,d0
bra.b L645
L644
; dst[i] = (GLuint) index[i];
lea -$1908(a5),a0
move.l 0(a0,d0.l*4),d1
move.l d1,0(a1,d0.l*4)
addq.l #1,d0
L645
cmp.l d2,d0
blt.b L644
L646
; if (ctx->Pack.SwapBytes)
move.l a2,a0
add.l #$E644,a0
tst.b $18(a0)
beq L662
L647
; gl_swap4( (GLuint *) dst, width );
move.l d2,-(a7)
move.l a1,-(a7)
jsr _gl_swap4
addq.w #$8,a7
L648
;
bra L662
L649
; GLint *dst = (GLint *) dest;
move.l a0,a1
; for (i=0;
moveq #0,d0
bra.b L651
L650
; dst[i] = (GLint) index[i];
lea -$1908(a5),a0
move.l 0(a0,d0.l*4),d1
move.l d1,0(a1,d0.l*4)
addq.l #1,d0
L651
cmp.l d2,d0
blt.b L650
L652
; if (ctx->Pack.SwapBytes)
move.l a2,a0
add.l #$E644,a0
tst.b $18(a0)
beq.b L662
L653
; gl_swap4( (GLuint *) dst, width );
move.l d2,-(a7)
move.l a1,-(a7)
jsr _gl_swap4
addq.w #$8,a7
L654
;
bra.b L662
L655
; GLfloat *dst = (GLfloat *) dest;
move.l a0,a1
; for (i=0;
moveq #0,d0
bra.b L657
L656
; dst[i] = (GLfloat) index[i];
lea -$1908(a5),a0
fmove.l 0(a0,d0.l*4),fp0
fmove.s fp0,0(a1,d0.l*4)
addq.l #1,d0
L657
cmp.l d2,d0
blt.b L656
L658
; if (ctx->Pack.SwapBytes)
move.l a2,a0
add.l #$E644,a0
tst.b $18(a0)
beq.b L662
L659
; gl_swap4( (GLuint *) dst, width );
move.l d2,-(a7)
move.l a1,-(a7)
jsr _gl_swap4
addq.w #$8,a7
L660
;
bra.b L662
L661
; gl_error( ctx, GL_INVALID_ENUM, "glReadPixel
move.l #L613,-(a7)
pea $500.w
move.l a2,-(a7)
jsr _gl_error
add.w #$C,a7
L662
addq.l #1,d3
addq.l #1,d4
L663
cmp.l d5,d3
blt L617
L664
movem.l (a7)+,d2-d7/a2/a3
unlk a5
rts
L612
dc.b 'glReadPixels',0
L613
dc.b 'glReadPixels(type)',0
SECTION "_read_depth_pixels:0",CODE
rts
;static void read_depth_pixels( GLcontext *ctx,
_read_depth_pixels
L745 EQU -$1922
link a5,#L745
movem.l d2-d7/a2-a4,-(a7)
movem.l $14(a5),d2/d7
move.l $10(a5),d4
move.l $8(a5),a2
move.l $20(a5),a4
L669
; if (ctx->Visual->DepthBits <= 0)
move.l $8F8(a2),a0
move.l $1C(a0),d0
cmp.l #0,d0
bgt.b L671
L670
; gl_error( ctx, GL_INVALID_OPERATION, "glReadPixels" );
move.l #L667,-(a7)
pea $502.w
move.l a2,-(a7)
jsr _gl_error
add.w #$C,a7
movem.l (a7)+,d2-d7/a2-a4
unlk a5
rts
L671
; bias_or_scale = ctx->Pixel.DepthBias!=0.0 || ctx->Pixel.DepthS
moveq #1,d0
move.l a2,a0
add.l #$B168,a0
fmove.s $26(a0),fp0
ftst.d fp0
fbne.b L674
L672
move.l a2,a0
add.l #$B168,a0
fmove.s $2A(a0),fp0
fcmp.d #$.3FF00000.00000000,fp0
fbne.b L674
L673
moveq #0,d0
L674
move.b d0,d5
; if (type==GL_UNSIGNED_SHORT && sizeof(GLdepth)==sizeof(GLushor
move.l $1C(a5),d0
cmp.l #$1403,d0
bne.b L681
L675
tst.b d5
bne.b L681
L676
move.l a2,a0
add.l #$E644,a0
tst.b $18(a0)
bne.b L681
L677
; for (j=0;
moveq #0,d3
bra.b L679
L678
; GLushort *dst = (GLushort*) gl_pixel_addr_in_image
clr.l -(a7)
move.l d3,-(a7)
clr.l -(a7)
move.l $1C(a5),-(a7)
pea $1902.w
move.l d7,-(a7)
move.l d2,-(a7)
move.l a4,-(a7)
move.l a2,a0
add.l #$E644,a0
pea (a0)
jsr _gl_pixel_addr_in_image
add.w #$24,a7
; (*ctx->Driver.ReadDepthSpanInt)( ctx, width, x, y,
move.l d0,-(a7)
move.l d4,-(a7)
move.l $C(a5),-(a7)
move.l d2,-(a7)
move.l a2,-(a7)
move.l $994(a2),a0
jsr (a0)
add.w #$14,a7
addq.l #1,d3
addq.l #1,d4
L679
cmp.l d7,d3
blt.b L678
L680
bra L744
L681
; else if (type==GL_UNSIGNED_INT && sizeof(GLdepth)==sizeof
move.l $1C(a5),d0
cmp.l #$1405,d0
bne.b L691
L682
bra.b L691
L683
; max = max << 1;
moveq #1,d1
asl.l d1,d0
; shift++;
addq.l #1,d5
move.l d0,d1
and.l #$80000000,d1
beq.b L683
L684
; for (j=0;
moveq #0,d3
bra.b L689
L685
; GLuint *dst = (GLuint *) gl_pixel_addr_in_image(&c
clr.l -(a7)
move.l d3,-(a7)
clr.l -(a7)
move.l $1C(a5),-(a7)
pea $1902.w
move.l d7,-(a7)
move.l d2,-(a7)
move.l a4,-(a7)
move.l a2,a0
add.l #$E644,a0
pea (a0)
jsr _gl_pixel_addr_in_image
add.w #$24,a7
move.l d0,a3
; (*ctx->Driver.ReadDepthSpanInt)( ctx, width, x, y,
move.l a3,-(a7)
move.l d4,-(a7)
move.l $C(a5),-(a7)
move.l d2,-(a7)
move.l a2,-(a7)
move.l $994(a2),a0
jsr (a0)
add.w #$14,a7
; for (i=0;
moveq #0,d0
bra.b L687
L686
; dst[i] = dst[i] << shift;
move.l 0(a3,d0.l*4),d1
asl.l d5,d1
move.l d1,0(a3,d0.l*4)
addq.l #1,d0
L687
cmp.l d2,d0
blt.b L686
L688
addq.l #1,d3
addq.l #1,d4
L689
cmp.l d7,d3
blt.b L685
L690
bra L744
L691
; for (j=0;
moveq #0,d3
bra L743
L692
; (*ctx->Driver.ReadDepthSpanFloat)( ctx, width, x,
pea -$190E(a5)
move.l d4,-(a7)
move.l $C(a5),-(a7)
move.l d2,-(a7)
move.l a2,-(a7)
move.l $990(a2),a0
jsr (a0)
add.w #$14,a7
; if (bias_or_scale)
tst.b d5
beq.b L702
L693
; for (i=0;
moveq #0,d0
bra.b L701
L694
; d = depth[i] * ctx->Pixel.DepthScale +
lea -$190E(a5),a0
fmove.s 0(a0,d0.l*4),fp0
move.l a2,a0
add.l #$B168,a0
fmul.s $2A(a0),fp0
move.l a2,a0
add.l #$B168,a0
fadd.s $26(a0),fp0
; depth[i] = CLAMP( d, 0.0F, 1.0F );
fcmp.s #$.00000000,fp0
fboge.b L696
L695
fmove.s #$.00000000,fp0
bra.b L700
L696
fcmp.s #$.3F800000,fp0
fbole.b L698
L697
fmove.s #$.3F800000,fp0
L698
L699
L700
lea -$190E(a5),a0
fmove.s fp0,0(a0,d0.l*4)
addq.l #1,d0
L701
cmp.l d2,d0
blt.b L694
L702
; dest = gl_pixel_addr_in_image(&ctx->Pack, pixels,
clr.l -(a7)
move.l d3,-(a7)
clr.l -(a7)
move.l $1C(a5),-(a7)
pea $1902.w
move.l d7,-(a7)
move.l d2,-(a7)
move.l a4,-(a7)
move.l a2,a0
add.l #$E644,a0
pea (a0)
jsr _gl_pixel_addr_in_image
add.w #$24,a7
move.l d0,a0
; switch (type)
move.l $1C(a5),d0
sub.l #$1400,d0
cmp.l #6,d0
bhi L741
move.l L746(pc,d0.l*4),a1
jmp (a1)
L746
dc.l L707
dc.l L703
dc.l L717
dc.l L711
dc.l L729
dc.l L723
dc.l L735
;
L703
; GLubyte *dst = (GLubyte *) dest;
move.l a0,a1
; for (i=0;
moveq #0,d0
bra.b L705
L704
; dst[i] = FLOAT_TO_UBYTE( d
lea -$190E(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.s #$.437F0000,fp0
fmove.l fp0,d1
move.b d1,0(a1,d0.l)
addq.l #1,d0
L705
cmp.l d2,d0
blt.b L704
L706
;
bra L742
L707
; GLbyte *dst = (GLbyte *) dest;
move.l a0,a1
; for (i=0;
moveq #0,d0
bra.b L709
L708
; dst[i] = FLOAT_TO_BYTE( de
lea -$190E(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.s #$.437F0000,fp0
fmove.l fp0,d1
subq.l #1,d1
divsl.l #2,d1
move.b d1,0(a1,d0.l)
addq.l #1,d0
L709
cmp.l d2,d0
blt.b L708
L710
;
bra L742
L711
; GLushort *dst = (GLushort *) des
move.l a0,a1
; for (i=0;
moveq #0,d0
bra.b L713
L712
; dst[i] = FLOAT_TO_USHORT(
lea -$190E(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.s #$.477FFF00,fp0
fmove.l fp0,d1
move.w d1,0(a1,d0.l*2)
addq.l #1,d0
L713
cmp.l d2,d0
blt.b L712
L714
; if (ctx->Pack.SwapBytes)
move.l a2,a0
add.l #$E644,a0
tst.b $18(a0)
beq.b L716
L715
; gl_swap2( (GLushort *) dst
move.l d2,-(a7)
move.l a1,-(a7)
jsr _gl_swap2
addq.w #$8,a7
L716
;
bra L742
L717
; GLshort *dst = (GLshort *) dest;
move.l a0,a1
; for (i=0;
moveq #0,d0
bra.b L719
L718
; dst[i] = FLOAT_TO_SHORT( d
lea -$190E(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.s #$.477FFF00,fp0
fmove.l fp0,d1
subq.l #1,d1
divsl.l #2,d1
move.w d1,0(a1,d0.l*2)
addq.l #1,d0
L719
cmp.l d2,d0
blt.b L718
L720
; if (ctx->Pack.SwapBytes)
move.l a2,a0
add.l #$E644,a0
tst.b $18(a0)
beq.b L722
L721
; gl_swap2( (GLushort *) dst
move.l d2,-(a7)
move.l a1,-(a7)
jsr _gl_swap2
addq.w #$8,a7
L722
;
bra L742
L723
; GLuint *dst = (GLuint *) dest;
move.l a0,a1
; for (i=0;
moveq #0,d0
bra.b L725
L724
; dst[i] = FLOAT_TO_UINT( de
lea -$190E(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.d #$.41EFFFFF.FFE00000,fp0
fmove.l fp0,d1
move.l d1,0(a1,d0.l*4)
addq.l #1,d0
L725
cmp.l d2,d0
blt.b L724
L726
; if (ctx->Pack.SwapBytes)
move.l a2,a0
add.l #$E644,a0
tst.b $18(a0)
beq.b L728
L727
; gl_swap4( (GLuint *) dst,
move.l d2,-(a7)
move.l a1,-(a7)
jsr _gl_swap4
addq.w #$8,a7
L728
;
bra L742
L729
; GLint *dst = (GLint *) dest;
move.l a0,a1
; for (i=0;
moveq #0,d0
bra.b L731
L730
; dst[i] = FLOAT_TO_INT( dep
lea -$190E(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.d #$.41DFFFFF.FFC00000,fp0
fmove.l fp0,d1
move.l d1,0(a1,d0.l*4)
addq.l #1,d0
L731
cmp.l d2,d0
blt.b L730
L732
; if (ctx->Pack.SwapBytes)
move.l a2,a0
add.l #$E644,a0
tst.b $18(a0)
beq.b L734
L733
; gl_swap4( (GLuint *) dst,
move.l d2,-(a7)
move.l a1,-(a7)
jsr _gl_swap4
addq.w #$8,a7
L734
;
bra.b L742
L735
; GLfloat *dst = (GLfloat *) dest;
move.l a0,a1
; for (i=0;
moveq #0,d0
bra.b L737
L736
; dst[i] = depth[i];
lea -$190E(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmove.s fp0,0(a1,d0.l*4)
addq.l #1,d0
L737
cmp.l d2,d0
blt.b L736
L738
; if (ctx->Pack.SwapBytes)
move.l a2,a0
add.l #$E644,a0
tst.b $18(a0)
beq.b L740
L739
; gl_swap4( (GLuint *) dst,
move.l d2,-(a7)
move.l a1,-(a7)
jsr _gl_swap4
addq.w #$8,a7
L740
;
bra.b L742
L741
; gl_error( ctx, GL_INVALID_ENUM, "glRea
move.l #L668,-(a7)
pea $500.w
move.l a2,-(a7)
jsr _gl_error
add.w #$C,a7
L742
addq.l #1,d3
addq.l #1,d4
L743
cmp.l d7,d3
blt L692
L744
movem.l (a7)+,d2-d7/a2-a4
unlk a5
rts
L667
dc.b 'glReadPixels',0
L668
dc.b 'glReadPixels(type)',0
SECTION "_read_stencil_pixels:0",CODE
;static void read_stencil_pixels( GLcontext *ctx,
_read_stencil_pixels
L796 EQU -$65C
link a5,#L796
movem.l d2-d7/a2/a3,-(a7)
movem.l $14(a5),d2/d5/d7/a3
move.l $10(a5),d4
move.l $8(a5),a2
L749
; if (ctx->Visual->StencilBits<=0)
move.l $8F8(a2),a0
move.l $20(a0),d0
cmp.l #0,d0
bgt.b L751
L750
; gl_error( ctx, GL_INVALID_OPERATION, "glReadPixels" );
move.l #L747,-(a7)
pea $502.w
move.l a2,-(a7)
jsr _gl_error
add.w #$C,a7
movem.l (a7)+,d2-d7/a2/a3
unlk a5
rts
L751
; shift_or_offset = ctx->Pixel.IndexShift!=0 || ctx->Pixel.Index
moveq #1,d0
move.l a2,a0
add.l #$B168,a0
tst.l $2E(a0)
bne.b L754
L752
move.l a2,a0
add.l #$B168,a0
tst.l $32(a0)
bne.b L754
L753
moveq #0,d0
L754
move.b d0,-1(a5)
; for (j=0;
moveq #0,d3
bra L794
L755
; gl_read_stencil_span( ctx, width, x, y, stencil );
pea -$64E(a5)
move.l d4,-(a7)
move.l $C(a5),-(a7)
move.l d2,-(a7)
move.l a2,-(a7)
jsr _gl_read_stencil_span
add.w #$14,a7
; if (shift_or_offset)
tst.b -1(a5)
beq.b L757
L756
; gl_shift_and_offset_stencil( ctx, width, stencil );
pea -$64E(a5)
move.l d2,-(a7)
move.l a2,-(a7)
jsr _gl_shift_and_offset_stencil
add.w #$C,a7
L757
; if (ctx->Pixel.MapStencilFlag)
move.l a2,a0
add.l #$B168,a0
tst.b $37(a0)
beq.b L759
L758
; gl_map_stencil( ctx, width, stencil );
pea -$64E(a5)
move.l d2,-(a7)
move.l a2,-(a7)
jsr _gl_map_stencil
add.w #$C,a7
L759
; dest = gl_pixel_addr_in_image(&ctx->Pack, pixels,
clr.l -(a7)
move.l d3,-(a7)
clr.l -(a7)
move.l d7,-(a7)
pea $1901.w
move.l d5,-(a7)
move.l d2,-(a7)
move.l a3,-(a7)
move.l a2,a0
add.l #$E644,a0
pea (a0)
jsr _gl_pixel_addr_in_image
add.w #$24,a7
move.l d0,a0
; switch (type)
move.l d7,d0
sub.l #$1400,d0
cmp.l #6,d0
bhi L792
move.l L797(pc,d0.l*4),a1
jmp (a1)
L797
dc.l L761
dc.l L760
dc.l L768
dc.l L762
dc.l L780
dc.l L774
dc.l L786
;
L760
; MEMCPY( dest, s
move.l d2,-(a7)
pea -$64E(a5)
move.l a0,-(a7)
jsr _q_memcpy
add.w #$C,a7
;
bra L793
L761
; MEMCPY( dest, s
move.l d2,-(a7)
pea -$64E(a5)
move.l a0,-(a7)
jsr _q_memcpy
add.w #$C,a7
;
bra L793
L762
; GLushort *dst = (GLushort *) dest;
move.l a0,a1
; for (i=0;
moveq #0,d0
bra.b L764
L763
; dst[i] = (GLushort) stencil[i];
lea -$64E(a5),a0
moveq #0,d1
move.b 0(a0,d0.l),d1
move.w d1,0(a1,d0.l*2)
addq.l #1,d0
L764
cmp.l d2,d0
blt.b L763
L765
; if (ctx->Pack.SwapBytes)
move.l a2,a0
add.l #$E644,a0
tst.b $18(a0)
beq.b L767
L766
; gl_swap2( (GLushort *) dst, width );
move.l d2,-(a7)
move.l a1,-(a7)
jsr _gl_swap2
addq.w #$8,a7
L767
;
bra L793
L768
; GLshort *dst = (GLshort *) dest;
move.l a0,a1
; for (i=0;
moveq #0,d0
bra.b L770
L769
; dst[i] = (GLshort) stencil[i];
lea -$64E(a5),a0
moveq #0,d1
move.b 0(a0,d0.l),d1
move.w d1,0(a1,d0.l*2)
addq.l #1,d0
L770
cmp.l d2,d0
blt.b L769
L771
; if (ctx->Pack.SwapBytes)
move.l a2,a0
add.l #$E644,a0
tst.b $18(a0)
beq.b L773
L772
; gl_swap2( (GLushort *) dst, width );
move.l d2,-(a7)
move.l a1,-(a7)
jsr _gl_swap2
addq.w #$8,a7
L773
;
bra L793
L774
; GLuint *dst = (GLuint *) dest;
move.l a0,a1
; for (i=0;
moveq #0,d0
bra.b L776
L775
; dst[i] = (GLuint) stencil[i];
lea -$64E(a5),a0
moveq #0,d1
move.b 0(a0,d0.l),d1
move.l d1,0(a1,d0.l*4)
addq.l #1,d0
L776
cmp.l d2,d0
blt.b L775
L777
; if (ctx->Pack.SwapBytes)
move.l a2,a0
add.l #$E644,a0
tst.b $18(a0)
beq.b L779
L778
; gl_swap4( (GLuint *) dst, width );
move.l d2,-(a7)
move.l a1,-(a7)
jsr _gl_swap4
addq.w #$8,a7
L779
;
bra L793
L780
; GLint *dst = (GLint *) dest;
; for (i=0;
moveq #0,d0
bra.b L782
L781
; *dst++ = (GLint) stencil[i];
lea -$64E(a5),a1
moveq #0,d1
move.b 0(a1,d0.l),d1
move.l d1,(a0)+
addq.l #1,d0
L782
cmp.l d2,d0
blt.b L781
L783
; if (ctx->Pack.SwapBytes)
move.l a2,a1
add.l #$E644,a1
tst.b $18(a1)
beq.b L785
L784
; gl_swap4( (GLuint *) dst, width );
move.l d2,-(a7)
move.l a0,-(a7)
jsr _gl_swap4
addq.w #$8,a7
L785
;
bra.b L793
L786
; GLfloat *dst = (GLfloat *) dest;
move.l a0,a1
; for (i=0;
moveq #0,d0
bra.b L788
L787
; dst[i] = (GLfloat) stencil[i];
lea -$64E(a5),a0
moveq #0,d1
move.b 0(a0,d0.l),d1
fmove.l d1,fp0
fmove.s fp0,0(a1,d0.l*4)
addq.l #1,d0
L788
cmp.l d2,d0
blt.b L787
L789
; if (ctx->Pack.SwapBytes)
move.l a2,a0
add.l #$E644,a0
tst.b $18(a0)
beq.b L791
L790
; gl_swap4( (GLuint *) dst, width );
move.l d2,-(a7)
move.l a1,-(a7)
jsr _gl_swap4
addq.w #$8,a7
L791
;
bra.b L793
L792
; gl_error( ctx, GL_INVALID_ENUM, "glReadPixel
move.l #L748,-(a7)
pea $500.w
move.l a2,-(a7)
jsr _gl_error
add.w #$C,a7
L793
addq.l #1,d3
addq.l #1,d4
L794
cmp.l d5,d3
blt L755
L795
movem.l (a7)+,d2-d7/a2/a3
unlk a5
rts
L747
dc.b 'glReadPixels',0
L748
dc.b 'glReadPixels(type)',0
SECTION "_read_fast_rgba_pixels:0",CODE
; }
_read_fast_rgba_pixels
L827 EQU -$28
link a5,#L827
movem.l d2-d7/a2/a3,-(a7)
move.l $18(a5),d1
move.l $10(a5),d2
move.l $C(a5),d3
move.l $14(a5),d6
move.l $24(a5),a1
move.l $8(a5),a2
L798
; if (ctx->Pixel.ScaleOrBiasRGBA || ctx->Pixel.MapColorFlag)
move.l a2,a0
add.l #$B168,a0
tst.b $24(a0)
bne.b L800
L799
move.l a2,a0
add.l #$B168,a0
tst.b $36(a0)
beq.b L801
L800
moveq #0,d0
movem.l (a7)+,d2-d7/a2/a3
unlk a5
rts
L801
; if (ctx->Pack.Alignment != 1 || ctx->Pack.SwapBytes || ctx->Pa
move.l a2,a0
add.l #$E644,a0
move.l (a0),d0
cmp.l #1,d0
bne.b L804
L802
move.l a2,a0
add.l #$E644,a0
tst.b $18(a0)
bne.b L804
L803
move.l a2,a0
add.l #$E644,a0
tst.b $19(a0)
beq.b L805
L804
moveq #0,d0
movem.l (a7)+,d2-d7/a2/a3
unlk a5
rts
L805
; GLint srcX = x;
move.l d3,d7
; GLint srcY = y;
; GLint readWidth = width;
move.l d6,d5
; GLint readHeight = height;
move.l d1,d4
; GLint skipPixels = ctx->Pack.SkipPixels;
move.l a2,a0
add.l #$E644,a0
move.l $8(a0),d3
; GLint skipRows = ctx->Pack.SkipRows;
move.l a2,a0
add.l #$E644,a0
move.l $C(a0),d0
; if (ctx->Pack.RowLength > 0)
move.l a2,a0
add.l #$E644,a0
move.l 4(a0),d1
cmp.l #0,d1
ble.b L807
L806
; rowLength = ctx->Pack.RowLength;
move.l a2,a0
add.l #$E644,a0
move.l 4(a0),-$1C(a5)
bra.b L808
L807
; rowLength = width;
move.l d6,-$1C(a5)
L808
; if (srcX < ctx->Buffer->Xmin)
move.l $8FC(a2),a0
move.l d7,d6
cmp.l $24(a0),d6
bge.b L810
L809
; skipPixels += (ctx->Buffer->Xmin - srcX);
move.l $8FC(a2),a0
move.l $24(a0),d1
sub.l d7,d1
add.l d1,d3
; readWidth -= (ctx->Buffer->Xmin - srcX);
move.l $8FC(a2),a0
move.l $24(a0),d1
sub.l d7,d1
sub.l d1,d5
; srcX = ctx->Buffer->Xmin;
move.l $8FC(a2),a0
move.l $24(a0),d7
L810
; if (srcX + readWidth > ctx->Buffer->Xmax)
move.l d7,d1
add.l d5,d1
move.l d1,d6
move.l $8FC(a2),a0
cmp.l $28(a0),d6
ble.b L812
L811
; readWidth -= (srcX + readWidth - ctx->Buffer->Xmax
move.l d7,d1
add.l d5,d1
move.l $8FC(a2),a0
sub.l $28(a0),d1
subq.l #1,d1
sub.l d1,d5
L812
; if (readWidth <= 0)
cmp.l #0,d5
bgt.b L814
L813
moveq #1,d0
movem.l (a7)+,d2-d7/a2/a3
unlk a5
rts
L814
; if (srcY < ctx->Buffer->Ymin)
move.l $8FC(a2),a0
cmp.l $2C(a0),d2
bge.b L816
L815
; skipRows += (ctx->Buffer->Ymin - srcY);
move.l $8FC(a2),a0
move.l $2C(a0),d1
sub.l d2,d1
add.l d1,d0
; readHeight -= (ctx->Buffer->Ymin - srcY);
move.l $8FC(a2),a0
move.l $2C(a0),d1
sub.l d2,d1
sub.l d1,d4
; srcY = ctx->Buffer->Ymin;
move.l $8FC(a2),a0
move.l $2C(a0),d2
L816
; if (srcY + readHeight > ctx->Buffer->Ymax)
move.l d2,d1
add.l d4,d1
move.l d1,d6
move.l $8FC(a2),a0
cmp.l $30(a0),d6
ble.b L818
L817
; readHeight -= (srcY + readHeight - ctx->Buffer->Ym
move.l d2,d1
add.l d4,d1
move.l $8FC(a2),a0
sub.l $30(a0),d1
subq.l #1,d1
sub.l d1,d4
L818
; if (readHeight <= 0)
cmp.l #0,d4
bgt.b L820
L819
moveq #1,d0
movem.l (a7)+,d2-d7/a2/a3
unlk a5
rts
L820
; if (format==GL_RGBA && type==GL_UNSIGNED_BYTE)
move.l $1C(a5),d1
cmp.l #$1908,d1
bne.b L826
L821
move.l $20(a5),d1
cmp.l #$1401,d1
bne.b L826
L822
; GLubyte *dest = (GLubyte *) pixels
muls.l -$1C(a5),d0
add.l d3,d0
moveq #2,d1
asl.l d1,d0
add.l a1,d0
move.l d0,a3
; for (row=0;
moveq #0,d3
bra.b L824
L823
; (*ctx->Driver.ReadRGBASpan)(ctx, readWidth,
move.l a3,-(a7)
move.l d2,-(a7)
move.l d7,-(a7)
move.l d5,-(a7)
move.l a2,-(a7)
move.l $950(a2),a0
jsr (a0)
add.w #$14,a7
; dest += rowLength * 4;
move.l -$1C(a5),d0
moveq #2,d1
asl.l d1,d0
add.l a3,d0
move.l d0,a3
; srcY++;
addq.l #1,d2
addq.l #1,d3
L824
cmp.l d4,d3
blt.b L823
L825
moveq #1,d0
movem.l (a7)+,d2-d7/a2/a3
unlk a5
rts
L826
moveq #0,d0
movem.l (a7)+,d2-d7/a2/a3
unlk a5
rts
SECTION "_read_rgba_pixels:0",CODE
; * Pack/transfer/store the pixe
_read_rgba_pixels
L1302 EQU -$AF10
link a5,#L1302
movem.l d2-d7/a2-a4,-(a7)
fmovem.x fp2/fp3/fp4/fp5,-(a7)
move.l $14(a5),d2
move.l $1C(a5),d3
move.l $20(a5),d5
move.l $8(a5),a3
move.l $24(a5),a4
L831
; n = gl_components_in_format(format);
move.l d3,-(a7)
jsr _gl_components_in_format
addq.w #4,a7
move.l d0,-$10(a5)
; if (n <= 0)
move.l -$10(a5),d0
cmp.l #0,d0
bgt.b L833
L832
; gl_error(ctx, GL_INVALID_ENUM, "glReadPixels(format)");
move.l #L828,-(a7)
pea $500.w
move.l a3,-(a7)
jsr _gl_error
add.w #$C,a7
fmovem.x (a7)+,fp2/fp3/fp4/fp5
movem.l (a7)+,d2-d7/a2-a4
unlk a5
rts
L833
; s = gl_sizeof_type( type );
move.l d5,-(a7)
jsr _gl_sizeof_type
addq.w #4,a7
; if (s <= 0)
cmp.l #0,d0
bgt.b L835
L834
; gl_error( ctx, GL_INVALID_ENUM, "glReadPixels(type)" );
move.l #L829,-(a7)
pea $500.w
move.l a3,-(a7)
jsr _gl_error
add.w #$C,a7
fmovem.x (a7)+,fp2/fp3/fp4/fp5
movem.l (a7)+,d2-d7/a2-a4
unlk a5
rts
L835
; for (j=0;
moveq #0,d4
bra L1300
L836
; if (ctx->Visual->RGBAflag)
move.l a3,a1
move.l $8F8(a1),a0
tst.b (a0)
beq L845
L837
; GLfloat rscale = (1.0F / 255.0F);
fmove.s #$.3B808080,fp5
; GLfloat gscale = (1.0F / 255.0F);
fmove.s #$.3B808080,fp4
; GLfloat bscale = (1.0F / 255.0F);
fmove.s #$.3B808080,fp3
; GLfloat ascale = (1.0F / 255.0F);
fmove.s #$.3B808080,fp2
; gl_read_rgba_span(ctx, width, x, y, rgba );
move.l a5,a0
sub.l #$9610,a0
pea (a0)
move.l $10(a5),-(a7)
move.l $C(a5),-(a7)
move.l d2,-(a7)
move.l a3,-(a7)
jsr _gl_read_rgba_span
add.w #$14,a7
; for (i=0;
moveq #0,d0
bra L839
L838
; red[i] = rgba[i][RCOMP] * rscale;
move.l a5,a0
sub.l #$9610,a0
moveq #0,d1
move.b 0(a0,d0.l*4),d1
fmove.l d1,fp0
fmul.x fp5,fp0
lea -$1910(a5),a0
fmove.s fp0,0(a0,d0.l*4)
; green[i] = rgba[i][GCOMP] * gscale;
move.l a5,a0
sub.l #$9610,a0
lea 0(a0,d0.l*4),a0
moveq #0,d1
move.b 1(a0),d1
fmove.l d1,fp0
fmul.x fp4,fp0
lea -$3210(a5),a0
fmove.s fp0,0(a0,d0.l*4)
; blue[i] = rgba[i][BCOMP] * bscale;
move.l a5,a0
sub.l #$9610,a0
lea 0(a0,d0.l*4),a0
moveq #0,d1
move.b 2(a0),d1
fmove.l d1,fp0
fmul.x fp3,fp0
lea -$4B10(a5),a0
fmove.s fp0,0(a0,d0.l*4)
; alpha[i] = rgba[i][ACOMP] * ascale;
move.l a5,a0
sub.l #$9610,a0
lea 0(a0,d0.l*4),a0
moveq #0,d1
move.b 3(a0),d1
fmove.l d1,fp0
fmul.x fp2,fp0
lea -$6410(a5),a0
fmove.s fp0,0(a0,d0.l*4)
addq.l #1,d0
L839
cmp.l d2,d0
blt L838
L840
; if (ctx->Pixel.ScaleOrBiasRGBA)
move.l a3,a0
add.l #$B168,a0
tst.b $24(a0)
beq.b L842
L841
; gl_scale_and_bias_color( ctx, width, red, green, blue, alp
pea -$6410(a5)
pea -$4B10(a5)
pea -$3210(a5)
pea -$1910(a5)
move.l d2,-(a7)
move.l a3,-(a7)
jsr _gl_scale_and_bias_color
add.w #$18,a7
L842
; if (ctx->Pixel.MapColorFlag)
move.l a3,a0
add.l #$B168,a0
tst.b $36(a0)
beq.b L844
L843
; gl_map_color( ctx, width, red, green, blue, alpha );
pea -$6410(a5)
pea -$4B10(a5)
pea -$3210(a5)
pea -$1910(a5)
move.l d2,-(a7)
move.l a3,-(a7)
jsr _gl_map_color
add.w #$18,a7
L844
bra L849
L845
; (*ctx->Driver.ReadCI32Span)( ctx, width, x, y, index );
move.l a5,a0
sub.l #$AF10,a0
pea (a0)
move.l $10(a5),-(a7)
move.l $C(a5),-(a7)
move.l d2,-(a7)
move.l a3,-(a7)
move.l $94C(a3),a0
jsr (a0)
add.w #$14,a7
; if (ctx->Pixel.IndexShift!=0 || ctx->Pixel.IndexOffset!=0)
move.l a3,a0
add.l #$B168,a0
tst.l $2E(a0)
bne.b L847
L846
move.l a3,a0
add.l #$B168,a0
tst.l $32(a0)
beq.b L848
L847
; gl_map_ci( ctx, width, index );
move.l a5,a0
sub.l #$AF10,a0
pea (a0)
move.l d2,-(a7)
move.l a3,-(a7)
jsr _gl_map_ci
add.w #$C,a7
L848
; gl_map_ci_to_color(ctx, width, index, red, green,
pea -$6410(a5)
pea -$4B10(a5)
pea -$3210(a5)
pea -$1910(a5)
move.l a5,a0
sub.l #$AF10,a0
pea (a0)
move.l d2,-(a7)
move.l a3,-(a7)
jsr _gl_map_ci_to_color
add.w #$1C,a7
L849
; if (format==GL_LUMINANCE || format==GL_LUMINANCE_ALPHA)
cmp.l #$1909,d3
beq.b L851
L850
cmp.l #$190A,d3
bne.b L860
L851
; for (i=0;
moveq #0,d0
bra.b L859
L852
; GLfloat sum = red[i] + green[i] + blue[i];
lea -$1910(a5),a0
fmove.s 0(a0,d0.l*4),fp0
lea -$3210(a5),a0
fadd.s 0(a0,d0.l*4),fp0
lea -$4B10(a5),a0
fadd.s 0(a0,d0.l*4),fp0
; luminance[i] = CLAMP( sum, 0.0F, 1.0F );
fcmp.s #$.00000000,fp0
fboge.b L854
L853
fmove.s #$.00000000,fp0
bra.b L858
L854
fcmp.s #$.3F800000,fp0
fbole.b L856
L855
fmove.s #$.3F800000,fp0
L856
L857
L858
lea -$7D10(a5),a0
fmove.s fp0,0(a0,d0.l*4)
addq.l #1,d0
L859
cmp.l d2,d0
blt.b L852
L860
; switch (type)
move.l d5,d0
cmp.l #$8034,d0
beq L1228
bgt.b L1303
cmp.l #$1404,d0
beq L1100
bgt.b L1304
cmp.l #$1402,d0
beq L1003
bgt.b L1305
cmp.l #$1400,d0
beq L908
cmp.l #$1401,d0
beq L861
bra L1298
L1305
bgt L954
L1304
cmp.l #$8032,d0
beq L1198
bgt.b L1306
cmp.l #$1405,d0
beq L1051
cmp.l #$1406,d0
beq L1149
bra L1298
L1306
bgt L1218
L1303
cmp.l #$8364,d0
beq L1213
bgt.b L1307
cmp.l #$8362,d0
beq L1203
bgt.b L1308
cmp.l #$8035,d0
beq L1238
cmp.l #$8036,d0
beq L1268
bra L1298
L1308
bgt L1208
L1307
cmp.l #$8367,d0
beq L1253
bgt.b L1309
cmp.l #$8365,d0
beq L1223
cmp.l #$8366,d0
beq L1233
bra L1298
L1309
cmp.l #$8368,d0
beq L1283
bra L1298
;
L861
; GLubyte *dst = (GLubyte *) gl_pixel_ad
clr.l -(a7)
move.l d4,-(a7)
clr.l -(a7)
move.l d5,-(a7)
move.l d3,-(a7)
move.l $18(a5),-(a7)
move.l d2,-(a7)
move.l a4,-(a7)
move.l a3,a0
add.l #$E644,a0
pea (a0)
jsr _gl_pixel_addr_in_image
add.w #$24,a7
move.l d0,a0
; switch (format)
move.l d3,d0
cmp.l #$1908,d0
beq L890
bgt.b L1310
cmp.l #$1905,d0
beq L870
bgt.b L1311
cmp.l #$1903,d0
beq.b L862
cmp.l #$1904,d0
beq L866
bra L906
L1311
cmp.l #$1906,d0
beq L874
cmp.l #$1907,d0
beq L886
bra L906
L1310
cmp.l #$8000,d0
beq L902
bgt.b L1312
cmp.l #$1909,d0
beq L878
cmp.l #$190A,d0
beq L882
bra L906
L1312
cmp.l #$80E0,d0
beq L894
cmp.l #$80E1,d0
beq L898
bra L906
;
L862
; for (i=0;
moveq #0,d0
bra.b L864
L863
; dst[i] = FLOAT_TO_UB
lea -$1910(a5),a1
fmove.s 0(a1,d0.l*4),fp0
fmul.s #$.437F0000,fp0
fmove.l fp0,d1
move.b d1,0(a0,d0.l)
addq.l #1,d0
L864
cmp.l d2,d0
blt.b L863
L865
;
bra L907
L866
; for (i=0;
moveq #0,d0
bra.b L868
L867
; dst[i] = FLOAT_TO_UB
lea -$3210(a5),a1
fmove.s 0(a1,d0.l*4),fp0
fmul.s #$.437F0000,fp0
fmove.l fp0,d1
move.b d1,0(a0,d0.l)
addq.l #1,d0
L868
cmp.l d2,d0
blt.b L867
L869
;
bra L907
L870
; for (i=0;
moveq #0,d0
bra.b L872
L871
; dst[i] = FLOAT_TO_UB
lea -$4B10(a5),a1
fmove.s 0(a1,d0.l*4),fp0
fmul.s #$.437F0000,fp0
fmove.l fp0,d1
move.b d1,0(a0,d0.l)
addq.l #1,d0
L872
cmp.l d2,d0
blt.b L871
L873
;
bra L907
L874
; for (i=0;
moveq #0,d0
bra.b L876
L875
; dst[i] = FLOAT_TO_UB
lea -$6410(a5),a1
fmove.s 0(a1,d0.l*4),fp0
fmul.s #$.437F0000,fp0
fmove.l fp0,d1
move.b d1,0(a0,d0.l)
addq.l #1,d0
L876
cmp.l d2,d0
blt.b L875
L877
;
bra L907
L878
; for (i=0;
moveq #0,d0
bra.b L880
L879
; dst[i] = FLOAT_TO_UB
lea -$7D10(a5),a1
fmove.s 0(a1,d0.l*4),fp0
fmul.s #$.437F0000,fp0
fmove.l fp0,d1
move.b d1,0(a0,d0.l)
addq.l #1,d0
L880
cmp.l d2,d0
blt.b L879
L881
;
bra L907
L882
; for (i=0;
moveq #0,d0
bra.b L884
L883
; dst[i*2+0] = FLOAT_T
lea -$7D10(a5),a1
fmove.s 0(a1,d0.l*4),fp0
fmul.s #$.437F0000,fp0
fmove.l fp0,d1
move.b d1,d7
move.l d0,d1
moveq #1,d6
asl.l d6,d1
move.b d7,0(a0,d1.l)
; dst[i*2+1] = FLOAT_T
lea -$6410(a5),a1
fmove.s 0(a1,d0.l*4),fp0
fmul.s #$.437F0000,fp0
fmove.l fp0,d1
move.b d1,d7
move.l d0,d1
moveq #1,d6
asl.l d6,d1
lea 1(a0),a1
move.b d7,0(a1,d1.l)
addq.l #1,d0
L884
cmp.l d2,d0
blt.b L883
L885
;
bra L907
L886
; for (i=0;
moveq #0,d0
bra L888
L887
; dst[i*3+0] = FLOAT_T
lea -$1910(a5),a1
fmove.s 0(a1,d0.l*4),fp0
fmul.s #$.437F0000,fp0
fmove.l fp0,d1
move.b d1,d7
move.l d0,d1
muls.l #3,d1
move.b d7,0(a0,d1.l)
; dst[i*3+1] = FLOAT_T
lea -$3210(a5),a1
fmove.s 0(a1,d0.l*4),fp0
fmul.s #$.437F0000,fp0
fmove.l fp0,d1
move.b d1,d7
move.l d0,d1
muls.l #3,d1
lea 1(a0),a1
move.b d7,0(a1,d1.l)
; dst[i*3+2] = FLOAT_T
lea -$4B10(a5),a1
fmove.s 0(a1,d0.l*4),fp0
fmul.s #$.437F0000,fp0
fmove.l fp0,d1
move.b d1,d7
move.l d0,d1
muls.l #3,d1
lea 2(a0),a1
move.b d7,0(a1,d1.l)
addq.l #1,d0
L888
cmp.l d2,d0
blt L887
L889
;
bra L907
L890
; for (i=0;
moveq #0,d0
bra L892
L891
; dst[i*4+0] = FLOAT_T
lea -$1910(a5),a1
fmove.s 0(a1,d0.l*4),fp0
fmul.s #$.437F0000,fp0
fmove.l fp0,d1
move.b d1,d7
move.l d0,d1
moveq #2,d6
asl.l d6,d1
move.b d7,0(a0,d1.l)
; dst[i*4+1] = FLOAT_T
lea -$3210(a5),a1
fmove.s 0(a1,d0.l*4),fp0
fmul.s #$.437F0000,fp0
fmove.l fp0,d1
move.b d1,d7
move.l d0,d1
moveq #2,d6
asl.l d6,d1
lea 1(a0),a1
move.b d7,0(a1,d1.l)
; dst[i*4+2] = FLOAT_T
lea -$4B10(a5),a1
fmove.s 0(a1,d0.l*4),fp0
fmul.s #$.437F0000,fp0
fmove.l fp0,d1
move.b d1,d7
move.l d0,d1
moveq #2,d6
asl.l d6,d1
lea 2(a0),a1
move.b d7,0(a1,d1.l)
; dst[i*4+3] = FLOAT_T
lea -$6410(a5),a1
fmove.s 0(a1,d0.l*4),fp0
fmul.s #$.437F0000,fp0
fmove.l fp0,d1
move.b d1,d7
move.l d0,d1
moveq #2,d6
asl.l d6,d1
lea 3(a0),a1
move.b d7,0(a1,d1.l)
addq.l #1,d0
L892
cmp.l d2,d0
blt L891
L893
;
bra L907
L894
; for (i=0;
moveq #0,d0
bra L896
L895
; dst[i*3+0] = FLOAT_T
lea -$4B10(a5),a1
fmove.s 0(a1,d0.l*4),fp0
fmul.s #$.437F0000,fp0
fmove.l fp0,d1
move.b d1,d7
move.l d0,d1
muls.l #3,d1
move.b d7,0(a0,d1.l)
; dst[i*3+1] = FLOAT_T
lea -$3210(a5),a1
fmove.s 0(a1,d0.l*4),fp0
fmul.s #$.437F0000,fp0
fmove.l fp0,d1
move.b d1,d7
move.l d0,d1
muls.l #3,d1
lea 1(a0),a1
move.b d7,0(a1,d1.l)
; dst[i*3+2] = FLOAT_T
lea -$1910(a5),a1
fmove.s 0(a1,d0.l*4),fp0
fmul.s #$.437F0000,fp0
fmove.l fp0,d1
move.b d1,d7
move.l d0,d1
muls.l #3,d1
lea 2(a0),a1
move.b d7,0(a1,d1.l)
addq.l #1,d0
L896
cmp.l d2,d0
blt L895
L897
;
bra L907
L898
; for (i=0;
moveq #0,d0
bra L900
L899
; dst[i*4+0] = FLOAT_T
lea -$4B10(a5),a1
fmove.s 0(a1,d0.l*4),fp0
fmul.s #$.437F0000,fp0
fmove.l fp0,d1
move.b d1,d7
move.l d0,d1
moveq #2,d6
asl.l d6,d1
move.b d7,0(a0,d1.l)
; dst[i*4+1] = FLOAT_T
lea -$3210(a5),a1
fmove.s 0(a1,d0.l*4),fp0
fmul.s #$.437F0000,fp0
fmove.l fp0,d1
move.b d1,d7
move.l d0,d1
moveq #2,d6
asl.l d6,d1
lea 1(a0),a1
move.b d7,0(a1,d1.l)
; dst[i*4+2] = FLOAT_T
lea -$1910(a5),a1
fmove.s 0(a1,d0.l*4),fp0
fmul.s #$.437F0000,fp0
fmove.l fp0,d1
move.b d1,d7
move.l d0,d1
moveq #2,d6
asl.l d6,d1
lea 2(a0),a1
move.b d7,0(a1,d1.l)
; dst[i*4+3] = FLOAT_T
lea -$6410(a5),a1
fmove.s 0(a1,d0.l*4),fp0
fmul.s #$.437F0000,fp0
fmove.l fp0,d1
move.b d1,d7
move.l d0,d1
moveq #2,d6
asl.l d6,d1
lea 3(a0),a1
move.b d7,0(a1,d1.l)
addq.l #1,d0
L900
cmp.l d2,d0
blt L899
L901
;
bra L907
L902
; for (i=0;
moveq #0,d0
bra L904
L903
; dst[i*4+0] = FLOAT_T
lea -$6410(a5),a1
fmove.s 0(a1,d0.l*4),fp0
fmul.s #$.437F0000,fp0
fmove.l fp0,d1
move.b d1,d7
move.l d0,d1
moveq #2,d6
asl.l d6,d1
move.b d7,0(a0,d1.l)
; dst[i*4+1] = FLOAT_T
lea -$4B10(a5),a1
fmove.s 0(a1,d0.l*4),fp0
fmul.s #$.437F0000,fp0
fmove.l fp0,d1
move.b d1,d7
move.l d0,d1
moveq #2,d6
asl.l d6,d1
lea 1(a0),a1
move.b d7,0(a1,d1.l)
; dst[i*4+2] = FLOAT_T
lea -$3210(a5),a1
fmove.s 0(a1,d0.l*4),fp0
fmul.s #$.437F0000,fp0
fmove.l fp0,d1
move.b d1,d7
move.l d0,d1
moveq #2,d6
asl.l d6,d1
lea 2(a0),a1
move.b d7,0(a1,d1.l)
; dst[i*4+3] = FLOAT_T
lea -$1910(a5),a1
fmove.s 0(a1,d0.l*4),fp0
fmul.s #$.437F0000,fp0
fmove.l fp0,d1
move.b d1,d7
move.l d0,d1
moveq #2,d6
asl.l d6,d1
lea 3(a0),a1
move.b d7,0(a1,d1.l)
addq.l #1,d0
L904
cmp.l d2,d0
blt L903
L905
;
bra.b L907
L906
; gl_problem(ctx, "bad forma
move.l #L830,-(a7)
move.l a3,-(a7)
jsr _gl_problem
addq.w #$8,a7
L907
;
bra L1299
L908
; GLbyte *dst = (GLbyte *) gl_pixel_addr
clr.l -(a7)
move.l d4,-(a7)
clr.l -(a7)
move.l d5,-(a7)
move.l d3,-(a7)
move.l $18(a5),-(a7)
move.l d2,-(a7)
move.l a4,-(a7)
move.l a3,a0
add.l #$E644,a0
pea (a0)
jsr _gl_pixel_addr_in_image
add.w #$24,a7
move.l d0,a0
; switch (format)
move.l d3,d0
cmp.l #$1908,d0
beq L937
bgt.b L1313
cmp.l #$1905,d0
beq L917
bgt.b L1314
cmp.l #$1903,d0
beq.b L909
cmp.l #$1904,d0
beq L913
bra L952
L1314
cmp.l #$1906,d0
beq L921
cmp.l #$1907,d0
beq L933
bra L952
L1313
cmp.l #$8000,d0
beq L948
bgt.b L1315
cmp.l #$1909,d0
beq L925
cmp.l #$190A,d0
beq L929
bra L952
L1315
cmp.l #$80E0,d0
beq L941
cmp.l #$80E1,d0
beq L945
bra L952
;
L909
; for (i=0;
moveq #0,d0
bra.b L911
L910
; dst[i] = FLOAT_TO_BY
lea -$1910(a5),a1
fmove.s 0(a1,d0.l*4),fp0
fmul.s #$.437F0000,fp0
fmove.l fp0,d1
subq.l #1,d1
divsl.l #2,d1
move.b d1,0(a0,d0.l)
addq.l #1,d0
L911
cmp.l d2,d0
blt.b L910
L912
;
bra L953
L913
; for (i=0;
moveq #0,d0
bra.b L915
L914
; dst[i] = FLOAT_TO_BY
lea -$3210(a5),a1
fmove.s 0(a1,d0.l*4),fp0
fmul.s #$.437F0000,fp0
fmove.l fp0,d1
subq.l #1,d1
divsl.l #2,d1
move.b d1,0(a0,d0.l)
addq.l #1,d0
L915
cmp.l d2,d0
blt.b L914
L916
;
bra L953
L917
; for (i=0;
moveq #0,d0
bra.b L919
L918
; dst[i] = FLOAT_TO_BY
lea -$4B10(a5),a1
fmove.s 0(a1,d0.l*4),fp0
fmul.s #$.437F0000,fp0
fmove.l fp0,d1
subq.l #1,d1
divsl.l #2,d1
move.b d1,0(a0,d0.l)
addq.l #1,d0
L919
cmp.l d2,d0
blt.b L918
L920
;
bra L953
L921
; for (i=0;
moveq #0,d0
bra.b L923
L922
; dst[i] = FLOAT_TO_BY
lea -$6410(a5),a1
fmove.s 0(a1,d0.l*4),fp0
fmul.s #$.437F0000,fp0
fmove.l fp0,d1
subq.l #1,d1
divsl.l #2,d1
move.b d1,0(a0,d0.l)
addq.l #1,d0
L923
cmp.l d2,d0
blt.b L922
L924
;
bra L953
L925
; for (i=0;
moveq #0,d0
bra.b L927
L926
; dst[i] = FLOAT_TO_BY
lea -$7D10(a5),a1
fmove.s 0(a1,d0.l*4),fp0
fmul.s #$.437F0000,fp0
fmove.l fp0,d1
subq.l #1,d1
divsl.l #2,d1
move.b d1,0(a0,d0.l)
addq.l #1,d0
L927
cmp.l d2,d0
blt.b L926
L928
;
bra L953
L929
; for (i=0;
moveq #0,d0
bra.b L931
L930
; dst[i*2+0] = FLOAT_T
lea -$7D10(a5),a1
fmove.s 0(a1,d0.l*4),fp0
fmul.s #$.437F0000,fp0
fmove.l fp0,d1
subq.l #1,d1
divsl.l #2,d1
move.b d1,d7
move.l d0,d1
moveq #1,d6
asl.l d6,d1
move.b d7,0(a0,d1.l)
; dst[i*2+1] = FLOAT_T
lea -$6410(a5),a1
fmove.s 0(a1,d0.l*4),fp0
fmul.s #$.437F0000,fp0
fmove.l fp0,d1
subq.l #1,d1
divsl.l #2,d1
move.b d1,d7
move.l d0,d1
moveq #1,d6
asl.l d6,d1
lea 1(a0),a1
move.b d7,0(a1,d1.l)
addq.l #1,d0
L931
cmp.l d2,d0
blt.b L930
L932
;
bra L953
L933
; for (i=0;
moveq #0,d0
bra L935
L934
; dst[i*3+0] = FLOAT_T
lea -$1910(a5),a1
fmove.s 0(a1,d0.l*4),fp0
fmul.s #$.437F0000,fp0
fmove.l fp0,d1
subq.l #1,d1
divsl.l #2,d1
move.b d1,d7
move.l d0,d1
muls.l #3,d1
move.b d7,0(a0,d1.l)
; dst[i*3+1] = FLOAT_T
lea -$3210(a5),a1
fmove.s 0(a1,d0.l*4),fp0
fmul.s #$.437F0000,fp0
fmove.l fp0,d1
subq.l #1,d1
divsl.l #2,d1
move.b d1,d7
move.l d0,d1
muls.l #3,d1
lea 1(a0),a1
move.b d7,0(a1,d1.l)
; dst[i*3+2] = FLOAT_T
lea -$4B10(a5),a1
fmove.s 0(a1,d0.l*4),fp0
fmul.s #$.437F0000,fp0
fmove.l fp0,d1
subq.l #1,d1
divsl.l #2,d1
move.b d1,d7
move.l d0,d1
muls.l #3,d1
lea 2(a0),a1
move.b d7,0(a1,d1.l)
addq.l #1,d0
L935
cmp.l d2,d0
blt L934
L936
;
bra L953
L937
; for (i=0;
moveq #0,d0
bra L939
L938
; dst[i*4+0] = FLOAT_T
lea -$1910(a5),a1
fmove.s 0(a1,d0.l*4),fp0
fmul.s #$.437F0000,fp0
fmove.l fp0,d1
subq.l #1,d1
divsl.l #2,d1
move.b d1,d7
move.l d0,d1
moveq #2,d6
asl.l d6,d1
move.b d7,0(a0,d1.l)
; dst[i*4+1] = FLOAT_T
lea -$3210(a5),a1
fmove.s 0(a1,d0.l*4),fp0
fmul.s #$.437F0000,fp0
fmove.l fp0,d1
subq.l #1,d1
divsl.l #2,d1
move.b d1,d7
move.l d0,d1
moveq #2,d6
asl.l d6,d1
lea 1(a0),a1
move.b d7,0(a1,d1.l)
; dst[i*4+2] = FLOAT_T
lea -$4B10(a5),a1
fmove.s 0(a1,d0.l*4),fp0
fmul.s #$.437F0000,fp0
fmove.l fp0,d1
subq.l #1,d1
divsl.l #2,d1
move.b d1,d7
move.l d0,d1
moveq #2,d6
asl.l d6,d1
lea 2(a0),a1
move.b d7,0(a1,d1.l)
; dst[i*4+3] = FLOAT_T
lea -$6410(a5),a1
fmove.s 0(a1,d0.l*4),fp0
fmul.s #$.437F0000,fp0
fmove.l fp0,d1
subq.l #1,d1
divsl.l #2,d1
move.b d1,d7
move.l d0,d1
moveq #2,d6
asl.l d6,d1
lea 3(a0),a1
move.b d7,0(a1,d1.l)
addq.l #1,d0
L939
cmp.l d2,d0
blt L938
L940
;
bra L953
L941
; for (i=0;
moveq #0,d0
bra L943
L942
; dst[i*3+0] = FLOAT_T
lea -$4B10(a5),a1
fmove.s 0(a1,d0.l*4),fp0
fmul.s #$.437F0000,fp0
fmove.l fp0,d1
subq.l #1,d1
divsl.l #2,d1
move.b d1,d7
move.l d0,d1
muls.l #3,d1
move.b d7,0(a0,d1.l)
; dst[i*3+1] = FLOAT_T
lea -$3210(a5),a1
fmove.s 0(a1,d0.l*4),fp0
fmul.s #$.437F0000,fp0
fmove.l fp0,d1
subq.l #1,d1
divsl.l #2,d1
move.b d1,d7
move.l d0,d1
muls.l #3,d1
lea 1(a0),a1
move.b d7,0(a1,d1.l)
; dst[i*3+2] = FLOAT_T
lea -$1910(a5),a1
fmove.s 0(a1,d0.l*4),fp0
fmul.s #$.437F0000,fp0
fmove.l fp0,d1
subq.l #1,d1
divsl.l #2,d1
move.b d1,d7
move.l d0,d1
muls.l #3,d1
lea 2(a0),a1
move.b d7,0(a1,d1.l)
addq.l #1,d0
L943
cmp.l d2,d0
blt L942
L944
;
bra L953
L945
; for (i=0;
moveq #0,d0
bra L947
L946
; dst[i*4+0] = FLOAT_T
lea -$4B10(a5),a1
fmove.s 0(a1,d0.l*4),fp0
fmul.s #$.437F0000,fp0
fmove.l fp0,d1
subq.l #1,d1
divsl.l #2,d1
move.b d1,d7
move.l d0,d1
moveq #2,d6
asl.l d6,d1
move.b d7,0(a0,d1.l)
; dst[i*4+1] = FLOAT_T
lea -$3210(a5),a1
fmove.s 0(a1,d0.l*4),fp0
fmul.s #$.437F0000,fp0
fmove.l fp0,d1
subq.l #1,d1
divsl.l #2,d1
move.b d1,d7
move.l d0,d1
moveq #2,d6
asl.l d6,d1
lea 1(a0),a1
move.b d7,0(a1,d1.l)
; dst[i*4+2] = FLOAT_T
lea -$1910(a5),a1
fmove.s 0(a1,d0.l*4),fp0
fmul.s #$.437F0000,fp0
fmove.l fp0,d1
subq.l #1,d1
divsl.l #2,d1
move.b d1,d7
move.l d0,d1
moveq #2,d6
asl.l d6,d1
lea 2(a0),a1
move.b d7,0(a1,d1.l)
; dst[i*4+3] = FLOAT_T
lea -$6410(a5),a1
fmove.s 0(a1,d0.l*4),fp0
fmul.s #$.437F0000,fp0
fmove.l fp0,d1
subq.l #1,d1
divsl.l #2,d1
move.b d1,d7
move.l d0,d1
moveq #2,d6
asl.l d6,d1
lea 3(a0),a1
move.b d7,0(a1,d1.l)
addq.l #1,d0
L947
cmp.l d2,d0
blt L946
L948
; for (i=0;
moveq #0,d0
bra L950
L949
; dst[i*4+0] = FLOAT_T
lea -$6410(a5),a1
fmove.s 0(a1,d0.l*4),fp0
fmul.s #$.437F0000,fp0
fmove.l fp0,d1
subq.l #1,d1
divsl.l #2,d1
move.b d1,d7
move.l d0,d1
moveq #2,d6
asl.l d6,d1
move.b d7,0(a0,d1.l)
; dst[i*4+1] = FLOAT_T
lea -$4B10(a5),a1
fmove.s 0(a1,d0.l*4),fp0
fmul.s #$.437F0000,fp0
fmove.l fp0,d1
subq.l #1,d1
divsl.l #2,d1
move.b d1,d7
move.l d0,d1
moveq #2,d6
asl.l d6,d1
lea 1(a0),a1
move.b d7,0(a1,d1.l)
; dst[i*4+2] = FLOAT_T
lea -$3210(a5),a1
fmove.s 0(a1,d0.l*4),fp0
fmul.s #$.437F0000,fp0
fmove.l fp0,d1
subq.l #1,d1
divsl.l #2,d1
move.b d1,d7
move.l d0,d1
moveq #2,d6
asl.l d6,d1
lea 2(a0),a1
move.b d7,0(a1,d1.l)
; dst[i*4+3] = FLOAT_T
lea -$1910(a5),a1
fmove.s 0(a1,d0.l*4),fp0
fmul.s #$.437F0000,fp0
fmove.l fp0,d1
subq.l #1,d1
divsl.l #2,d1
move.b d1,d7
move.l d0,d1
moveq #2,d6
asl.l d6,d1
lea 3(a0),a1
move.b d7,0(a1,d1.l)
addq.l #1,d0
L950
cmp.l d2,d0
blt L949
L951
;
bra.b L953
L952
; gl_problem(ctx, "bad forma
move.l #L830,-(a7)
move.l a3,-(a7)
jsr _gl_problem
addq.w #$8,a7
L953
;
bra L1299
L954
; GLushort *dst = (GLushort *) gl_pixel_
clr.l -(a7)
move.l d4,-(a7)
clr.l -(a7)
move.l d5,-(a7)
move.l d3,-(a7)
move.l $18(a5),-(a7)
move.l d2,-(a7)
move.l a4,-(a7)
move.l a3,a0
add.l #$E644,a0
pea (a0)
jsr _gl_pixel_addr_in_image
add.w #$24,a7
move.l d0,a2
; switch (format)
move.l d3,d0
cmp.l #$1908,d0
beq L983
bgt.b L1316
cmp.l #$1905,d0
beq L963
bgt.b L1317
cmp.l #$1903,d0
beq.b L955
cmp.l #$1904,d0
beq L959
bra L999
L1317
cmp.l #$1906,d0
beq L967
cmp.l #$1907,d0
beq L979
bra L999
L1316
cmp.l #$8000,d0
beq L995
bgt.b L1318
cmp.l #$1909,d0
beq L971
cmp.l #$190A,d0
beq L975
bra L999
L1318
cmp.l #$80E0,d0
beq L987
cmp.l #$80E1,d0
beq L991
bra L999
;
L955
; for (i=0;
moveq #0,d0
bra.b L957
L956
; dst[i] = FLOAT_TO_US
lea -$1910(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.s #$.477FFF00,fp0
fmove.l fp0,d1
move.w d1,0(a2,d0.l*2)
addq.l #1,d0
L957
cmp.l d2,d0
blt.b L956
L958
;
bra L1000
L959
; for (i=0;
moveq #0,d0
bra.b L961
L960
; dst[i] = FLOAT_TO_US
lea -$3210(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.s #$.477FFF00,fp0
fmove.l fp0,d1
move.w d1,0(a2,d0.l*2)
addq.l #1,d0
L961
cmp.l d2,d0
blt.b L960
L962
;
bra L1000
L963
; for (i=0;
moveq #0,d0
bra.b L965
L964
; dst[i] = FLOAT_TO_US
lea -$4B10(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.s #$.477FFF00,fp0
fmove.l fp0,d1
move.w d1,0(a2,d0.l*2)
addq.l #1,d0
L965
cmp.l d2,d0
blt.b L964
L966
;
bra L1000
L967
; for (i=0;
moveq #0,d0
bra.b L969
L968
; dst[i] = FLOAT_TO_US
lea -$6410(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.s #$.477FFF00,fp0
fmove.l fp0,d1
move.w d1,0(a2,d0.l*2)
addq.l #1,d0
L969
cmp.l d2,d0
blt.b L968
L970
;
bra L1000
L971
; for (i=0;
moveq #0,d0
bra.b L973
L972
; dst[i] = FLOAT_TO_US
lea -$7D10(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.s #$.477FFF00,fp0
fmove.l fp0,d1
move.w d1,0(a2,d0.l*2)
addq.l #1,d0
L973
cmp.l d2,d0
blt.b L972
L974
;
bra L1000
L975
; for (i=0;
moveq #0,d0
bra.b L977
L976
; dst[i*2+0] = FLOAT_T
lea -$7D10(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.s #$.477FFF00,fp0
fmove.l fp0,d1
move.w d1,d7
move.l d0,d1
moveq #1,d6
asl.l d6,d1
move.w d7,0(a2,d1.l*2)
; dst[i*2+1] = FLOAT_T
lea -$6410(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.s #$.477FFF00,fp0
fmove.l fp0,d1
move.w d1,d7
move.l d0,d1
moveq #1,d6
asl.l d6,d1
lea 2(a2),a0
move.w d7,0(a0,d1.l*2)
addq.l #1,d0
L977
cmp.l d2,d0
blt.b L976
L978
;
bra L1000
L979
; for (i=0;
moveq #0,d0
bra L981
L980
; dst[i*3+0] = FLOAT_T
lea -$1910(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.s #$.477FFF00,fp0
fmove.l fp0,d1
move.w d1,d7
move.l d0,d1
muls.l #3,d1
move.w d7,0(a2,d1.l*2)
; dst[i*3+1] = FLOAT_T
lea -$3210(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.s #$.477FFF00,fp0
fmove.l fp0,d1
move.w d1,d7
move.l d0,d1
muls.l #3,d1
lea 2(a2),a0
move.w d7,0(a0,d1.l*2)
; dst[i*3+2] = FLOAT_T
lea -$4B10(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.s #$.477FFF00,fp0
fmove.l fp0,d1
move.w d1,d7
move.l d0,d1
muls.l #3,d1
lea 4(a2),a0
move.w d7,0(a0,d1.l*2)
addq.l #1,d0
L981
cmp.l d2,d0
blt L980
L982
;
bra L1000
L983
; for (i=0;
moveq #0,d0
bra L985
L984
; dst[i*4+0] = FLOAT_T
lea -$1910(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.s #$.477FFF00,fp0
fmove.l fp0,d1
move.w d1,d7
move.l d0,d1
moveq #2,d6
asl.l d6,d1
move.w d7,0(a2,d1.l*2)
; dst[i*4+1] = FLOAT_T
lea -$3210(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.s #$.477FFF00,fp0
fmove.l fp0,d1
move.w d1,d7
move.l d0,d1
moveq #2,d6
asl.l d6,d1
lea 2(a2),a0
move.w d7,0(a0,d1.l*2)
; dst[i*4+2] = FLOAT_T
lea -$4B10(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.s #$.477FFF00,fp0
fmove.l fp0,d1
move.w d1,d7
move.l d0,d1
moveq #2,d6
asl.l d6,d1
lea 4(a2),a0
move.w d7,0(a0,d1.l*2)
; dst[i*4+3] = FLOAT_T
lea -$6410(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.s #$.477FFF00,fp0
fmove.l fp0,d1
move.w d1,d7
move.l d0,d1
moveq #2,d6
asl.l d6,d1
lea 6(a2),a0
move.w d7,0(a0,d1.l*2)
addq.l #1,d0
L985
cmp.l d2,d0
blt L984
L986
;
bra L1000
L987
; for (i=0;
moveq #0,d0
bra L989
L988
; dst[i*3+0] = FLOAT_T
lea -$4B10(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.s #$.477FFF00,fp0
fmove.l fp0,d1
move.w d1,d7
move.l d0,d1
muls.l #3,d1
move.w d7,0(a2,d1.l*2)
; dst[i*3+1] = FLOAT_T
lea -$3210(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.s #$.477FFF00,fp0
fmove.l fp0,d1
move.w d1,d7
move.l d0,d1
muls.l #3,d1
lea 2(a2),a0
move.w d7,0(a0,d1.l*2)
; dst[i*3+2] = FLOAT_T
lea -$1910(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.s #$.477FFF00,fp0
fmove.l fp0,d1
move.w d1,d7
move.l d0,d1
muls.l #3,d1
lea 4(a2),a0
move.w d7,0(a0,d1.l*2)
addq.l #1,d0
L989
cmp.l d2,d0
blt L988
L990
;
bra L1000
L991
; for (i=0;
moveq #0,d0
bra L993
L992
; dst[i*4+0] = FLOAT_T
lea -$4B10(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.s #$.477FFF00,fp0
fmove.l fp0,d1
move.w d1,d7
move.l d0,d1
moveq #2,d6
asl.l d6,d1
move.w d7,0(a2,d1.l*2)
; dst[i*4+1] = FLOAT_T
lea -$3210(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.s #$.477FFF00,fp0
fmove.l fp0,d1
move.w d1,d7
move.l d0,d1
moveq #2,d6
asl.l d6,d1
lea 2(a2),a0
move.w d7,0(a0,d1.l*2)
; dst[i*4+2] = FLOAT_T
lea -$1910(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.s #$.477FFF00,fp0
fmove.l fp0,d1
move.w d1,d7
move.l d0,d1
moveq #2,d6
asl.l d6,d1
lea 4(a2),a0
move.w d7,0(a0,d1.l*2)
; dst[i*4+3] = FLOAT_T
lea -$6410(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.s #$.477FFF00,fp0
fmove.l fp0,d1
move.w d1,d7
move.l d0,d1
moveq #2,d6
asl.l d6,d1
lea 6(a2),a0
move.w d7,0(a0,d1.l*2)
addq.l #1,d0
L993
cmp.l d2,d0
blt L992
L994
;
bra L1000
L995
; for (i=0;
moveq #0,d0
bra L997
L996
; dst[i*4+0] = FLOAT_T
lea -$6410(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.s #$.477FFF00,fp0
fmove.l fp0,d1
move.w d1,d7
move.l d0,d1
moveq #2,d6
asl.l d6,d1
move.w d7,0(a2,d1.l*2)
; dst[i*4+1] = FLOAT_T
lea -$4B10(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.s #$.477FFF00,fp0
fmove.l fp0,d1
move.w d1,d7
move.l d0,d1
moveq #2,d6
asl.l d6,d1
lea 2(a2),a0
move.w d7,0(a0,d1.l*2)
; dst[i*4+2] = FLOAT_T
lea -$3210(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.s #$.477FFF00,fp0
fmove.l fp0,d1
move.w d1,d7
move.l d0,d1
moveq #2,d6
asl.l d6,d1
lea 4(a2),a0
move.w d7,0(a0,d1.l*2)
; dst[i*4+3] = FLOAT_T
lea -$1910(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.s #$.477FFF00,fp0
fmove.l fp0,d1
move.w d1,d7
move.l d0,d1
moveq #2,d6
asl.l d6,d1
lea 6(a2),a0
move.w d7,0(a0,d1.l*2)
addq.l #1,d0
L997
cmp.l d2,d0
blt L996
L998
;
bra.b L1000
L999
; gl_problem(ctx, "bad forma
move.l #L830,-(a7)
move.l a3,-(a7)
jsr _gl_problem
addq.w #$8,a7
L1000
; if (ctx->Pack.SwapBytes)
move.l a3,a0
add.l #$E644,a0
tst.b $18(a0)
beq.b L1002
L1001
; gl_swap2( (GLushort *) dst, widt
move.l d2,d0
muls.l -$10(a5),d0
move.l d0,-(a7)
move.l a2,-(a7)
jsr _gl_swap2
addq.w #$8,a7
L1002
;
bra L1299
L1003
; GLshort *dst = (GLshort *) gl_pixel_ad
clr.l -(a7)
move.l d4,-(a7)
clr.l -(a7)
move.l d5,-(a7)
move.l d3,-(a7)
move.l $18(a5),-(a7)
move.l d2,-(a7)
move.l a4,-(a7)
move.l a3,a0
add.l #$E644,a0
pea (a0)
jsr _gl_pixel_addr_in_image
add.w #$24,a7
move.l d0,a2
; switch (format)
move.l d3,d0
cmp.l #$1908,d0
beq L1032
bgt.b L1319
cmp.l #$1905,d0
beq L1012
bgt.b L1320
cmp.l #$1903,d0
beq.b L1004
cmp.l #$1904,d0
beq L1008
bra L1047
L1320
cmp.l #$1906,d0
beq L1016
cmp.l #$1907,d0
beq L1028
bra L1047
L1319
cmp.l #$8000,d0
beq L1043
bgt.b L1321
cmp.l #$1909,d0
beq L1020
cmp.l #$190A,d0
beq L1024
bra L1047
L1321
cmp.l #$80E0,d0
beq L1036
cmp.l #$80E1,d0
beq L1040
bra L1047
;
L1004
; for (i=0;
moveq #0,d0
bra.b L1006
L1005
; dst[i] = FLOAT_TO_SH
lea -$1910(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.s #$.477FFF00,fp0
fmove.l fp0,d1
subq.l #1,d1
divsl.l #2,d1
move.w d1,0(a2,d0.l*2)
addq.l #1,d0
L1006
cmp.l d2,d0
blt.b L1005
L1007
;
bra L1048
L1008
; for (i=0;
moveq #0,d0
bra.b L1010
L1009
; dst[i] = FLOAT_TO_SH
lea -$3210(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.s #$.477FFF00,fp0
fmove.l fp0,d1
subq.l #1,d1
divsl.l #2,d1
move.w d1,0(a2,d0.l*2)
addq.l #1,d0
L1010
cmp.l d2,d0
blt.b L1009
L1011
;
bra L1048
L1012
; for (i=0;
moveq #0,d0
bra.b L1014
L1013
; dst[i] = FLOAT_TO_SH
lea -$4B10(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.s #$.477FFF00,fp0
fmove.l fp0,d1
subq.l #1,d1
divsl.l #2,d1
move.w d1,0(a2,d0.l*2)
addq.l #1,d0
L1014
cmp.l d2,d0
blt.b L1013
L1015
;
bra L1048
L1016
; for (i=0;
moveq #0,d0
bra.b L1018
L1017
; dst[i] = FLOAT_TO_SH
lea -$6410(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.s #$.477FFF00,fp0
fmove.l fp0,d1
subq.l #1,d1
divsl.l #2,d1
move.w d1,0(a2,d0.l*2)
addq.l #1,d0
L1018
cmp.l d2,d0
blt.b L1017
L1019
;
bra L1048
L1020
; for (i=0;
moveq #0,d0
bra.b L1022
L1021
; dst[i] = FLOAT_TO_SH
lea -$7D10(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.s #$.477FFF00,fp0
fmove.l fp0,d1
subq.l #1,d1
divsl.l #2,d1
move.w d1,0(a2,d0.l*2)
addq.l #1,d0
L1022
cmp.l d2,d0
blt.b L1021
L1023
;
bra L1048
L1024
; for (i=0;
moveq #0,d0
bra L1026
L1025
; dst[i*2+0] = FLOAT_T
lea -$7D10(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.s #$.477FFF00,fp0
fmove.l fp0,d1
subq.l #1,d1
divsl.l #2,d1
move.w d1,d7
move.l d0,d1
moveq #1,d6
asl.l d6,d1
move.w d7,0(a2,d1.l*2)
; dst[i*2+1] = FLOAT_T
lea -$6410(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.s #$.477FFF00,fp0
fmove.l fp0,d1
subq.l #1,d1
divsl.l #2,d1
move.w d1,d7
move.l d0,d1
moveq #1,d6
asl.l d6,d1
lea 2(a2),a0
move.w d7,0(a0,d1.l*2)
addq.l #1,d0
L1026
cmp.l d2,d0
blt.b L1025
L1027
;
bra L1048
L1028
; for (i=0;
moveq #0,d0
bra L1030
L1029
; dst[i*3+0] = FLOAT_T
lea -$1910(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.s #$.477FFF00,fp0
fmove.l fp0,d1
subq.l #1,d1
divsl.l #2,d1
move.w d1,d7
move.l d0,d1
muls.l #3,d1
move.w d7,0(a2,d1.l*2)
; dst[i*3+1] = FLOAT_T
lea -$3210(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.s #$.477FFF00,fp0
fmove.l fp0,d1
subq.l #1,d1
divsl.l #2,d1
move.w d1,d7
move.l d0,d1
muls.l #3,d1
lea 2(a2),a0
move.w d7,0(a0,d1.l*2)
; dst[i*3+2] = FLOAT_T
lea -$4B10(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.s #$.477FFF00,fp0
fmove.l fp0,d1
subq.l #1,d1
divsl.l #2,d1
move.w d1,d7
move.l d0,d1
muls.l #3,d1
lea 4(a2),a0
move.w d7,0(a0,d1.l*2)
addq.l #1,d0
L1030
cmp.l d2,d0
blt L1029
L1031
;
bra L1048
L1032
; for (i=0;
moveq #0,d0
bra L1034
L1033
; dst[i*4+0] = FLOAT_T
lea -$1910(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.s #$.477FFF00,fp0
fmove.l fp0,d1
subq.l #1,d1
divsl.l #2,d1
move.w d1,d7
move.l d0,d1
moveq #2,d6
asl.l d6,d1
move.w d7,0(a2,d1.l*2)
; dst[i*4+1] = FLOAT_T
lea -$3210(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.s #$.477FFF00,fp0
fmove.l fp0,d1
subq.l #1,d1
divsl.l #2,d1
move.w d1,d7
move.l d0,d1
moveq #2,d6
asl.l d6,d1
lea 2(a2),a0
move.w d7,0(a0,d1.l*2)
; dst[i*4+2] = FLOAT_T
lea -$4B10(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.s #$.477FFF00,fp0
fmove.l fp0,d1
subq.l #1,d1
divsl.l #2,d1
move.w d1,d7
move.l d0,d1
moveq #2,d6
asl.l d6,d1
lea 4(a2),a0
move.w d7,0(a0,d1.l*2)
; dst[i*4+3] = FLOAT_T
lea -$6410(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.s #$.477FFF00,fp0
fmove.l fp0,d1
subq.l #1,d1
divsl.l #2,d1
move.w d1,d7
move.l d0,d1
moveq #2,d6
asl.l d6,d1
lea 6(a2),a0
move.w d7,0(a0,d1.l*2)
addq.l #1,d0
L1034
cmp.l d2,d0
blt L1033
L1035
;
bra L1048
L1036
; for (i=0;
moveq #0,d0
bra L1038
L1037
; dst[i*3+0] = FLOAT_T
lea -$4B10(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.s #$.477FFF00,fp0
fmove.l fp0,d1
subq.l #1,d1
divsl.l #2,d1
move.w d1,d7
move.l d0,d1
muls.l #3,d1
move.w d7,0(a2,d1.l*2)
; dst[i*3+1] = FLOAT_T
lea -$3210(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.s #$.477FFF00,fp0
fmove.l fp0,d1
subq.l #1,d1
divsl.l #2,d1
move.w d1,d7
move.l d0,d1
muls.l #3,d1
lea 2(a2),a0
move.w d7,0(a0,d1.l*2)
; dst[i*3+2] = FLOAT_T
lea -$1910(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.s #$.477FFF00,fp0
fmove.l fp0,d1
subq.l #1,d1
divsl.l #2,d1
move.w d1,d7
move.l d0,d1
muls.l #3,d1
lea 4(a2),a0
move.w d7,0(a0,d1.l*2)
addq.l #1,d0
L1038
cmp.l d2,d0
blt L1037
L1039
;
bra L1048
L1040
; for (i=0;
moveq #0,d0
bra L1042
L1041
; dst[i*4+0] = FLOAT_T
lea -$4B10(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.s #$.477FFF00,fp0
fmove.l fp0,d1
subq.l #1,d1
divsl.l #2,d1
move.w d1,d7
move.l d0,d1
moveq #2,d6
asl.l d6,d1
move.w d7,0(a2,d1.l*2)
; dst[i*4+1] = FLOAT_T
lea -$3210(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.s #$.477FFF00,fp0
fmove.l fp0,d1
subq.l #1,d1
divsl.l #2,d1
move.w d1,d7
move.l d0,d1
moveq #2,d6
asl.l d6,d1
lea 2(a2),a0
move.w d7,0(a0,d1.l*2)
; dst[i*4+2] = FLOAT_T
lea -$1910(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.s #$.477FFF00,fp0
fmove.l fp0,d1
subq.l #1,d1
divsl.l #2,d1
move.w d1,d7
move.l d0,d1
moveq #2,d6
asl.l d6,d1
lea 4(a2),a0
move.w d7,0(a0,d1.l*2)
; dst[i*4+3] = FLOAT_T
lea -$6410(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.s #$.477FFF00,fp0
fmove.l fp0,d1
subq.l #1,d1
divsl.l #2,d1
move.w d1,d7
move.l d0,d1
moveq #2,d6
asl.l d6,d1
lea 6(a2),a0
move.w d7,0(a0,d1.l*2)
addq.l #1,d0
L1042
cmp.l d2,d0
blt L1041
L1043
; for (i=0;
moveq #0,d0
bra L1045
L1044
; dst[i*4+0] = FLOAT_T
lea -$6410(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.s #$.477FFF00,fp0
fmove.l fp0,d1
subq.l #1,d1
divsl.l #2,d1
move.w d1,d7
move.l d0,d1
moveq #2,d6
asl.l d6,d1
move.w d7,0(a2,d1.l*2)
; dst[i*4+1] = FLOAT_T
lea -$4B10(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.s #$.477FFF00,fp0
fmove.l fp0,d1
subq.l #1,d1
divsl.l #2,d1
move.w d1,d7
move.l d0,d1
moveq #2,d6
asl.l d6,d1
lea 2(a2),a0
move.w d7,0(a0,d1.l*2)
; dst[i*4+2] = FLOAT_T
lea -$3210(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.s #$.477FFF00,fp0
fmove.l fp0,d1
subq.l #1,d1
divsl.l #2,d1
move.w d1,d7
move.l d0,d1
moveq #2,d6
asl.l d6,d1
lea 4(a2),a0
move.w d7,0(a0,d1.l*2)
; dst[i*4+3] = FLOAT_T
lea -$1910(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.s #$.477FFF00,fp0
fmove.l fp0,d1
subq.l #1,d1
divsl.l #2,d1
move.w d1,d7
move.l d0,d1
moveq #2,d6
asl.l d6,d1
lea 6(a2),a0
move.w d7,0(a0,d1.l*2)
addq.l #1,d0
L1045
cmp.l d2,d0
blt L1044
L1046
;
bra.b L1048
L1047
; gl_problem(ctx, "bad forma
move.l #L830,-(a7)
move.l a3,-(a7)
jsr _gl_problem
addq.w #$8,a7
L1048
; if (ctx->Pack.SwapBytes)
move.l a3,a0
add.l #$E644,a0
tst.b $18(a0)
beq.b L1050
L1049
; gl_swap2( (GLushort *) dst, widt
move.l d2,d0
muls.l -$10(a5),d0
move.l d0,-(a7)
move.l a2,-(a7)
jsr _gl_swap2
addq.w #$8,a7
L1050
;
bra L1299
L1051
; GLuint *dst = (GLuint *) gl_pixel_addr
clr.l -(a7)
move.l d4,-(a7)
clr.l -(a7)
move.l d5,-(a7)
move.l d3,-(a7)
move.l $18(a5),-(a7)
move.l d2,-(a7)
move.l a4,-(a7)
move.l a3,a0
add.l #$E644,a0
pea (a0)
jsr _gl_pixel_addr_in_image
add.w #$24,a7
move.l d0,a2
; switch (format)
move.l d3,d0
cmp.l #$1908,d0
beq L1080
bgt.b L1322
cmp.l #$1905,d0
beq L1060
bgt.b L1323
cmp.l #$1903,d0
beq L1052
cmp.l #$1904,d0
beq L1056
bra L1096
L1323
cmp.l #$1906,d0
beq L1064
cmp.l #$1907,d0
beq L1076
bra L1096
L1322
cmp.l #$8000,d0
beq L1092
bgt.b L1324
cmp.l #$1909,d0
beq L1068
cmp.l #$190A,d0
beq L1072
bra L1096
L1324
cmp.l #$80E0,d0
beq L1084
cmp.l #$80E1,d0
beq L1088
bra L1096
;
L1052
; for (i=0;
moveq #0,d0
bra.b L1054
L1053
; dst[i] = FLOAT_TO_UI
lea -$1910(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.d #$.41EFFFFF.FFE00000,fp0
fmove.l fp0,d1
move.l d1,0(a2,d0.l*4)
addq.l #1,d0
L1054
cmp.l d2,d0
blt.b L1053
L1055
;
bra L1097
L1056
; for (i=0;
moveq #0,d0
bra.b L1058
L1057
; dst[i] = FLOAT_TO_UI
lea -$3210(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.d #$.41EFFFFF.FFE00000,fp0
fmove.l fp0,d1
move.l d1,0(a2,d0.l*4)
addq.l #1,d0
L1058
cmp.l d2,d0
blt.b L1057
L1059
;
bra L1097
L1060
; for (i=0;
moveq #0,d0
bra.b L1062
L1061
; dst[i] = FLOAT_TO_UI
lea -$4B10(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.d #$.41EFFFFF.FFE00000,fp0
fmove.l fp0,d1
move.l d1,0(a2,d0.l*4)
addq.l #1,d0
L1062
cmp.l d2,d0
blt.b L1061
L1063
;
bra L1097
L1064
; for (i=0;
moveq #0,d0
bra.b L1066
L1065
; dst[i] = FLOAT_TO_UI
lea -$6410(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.d #$.41EFFFFF.FFE00000,fp0
fmove.l fp0,d1
move.l d1,0(a2,d0.l*4)
addq.l #1,d0
L1066
cmp.l d2,d0
blt.b L1065
L1067
;
bra L1097
L1068
; for (i=0;
moveq #0,d0
bra.b L1070
L1069
; dst[i] = FLOAT_TO_UI
lea -$7D10(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.d #$.41EFFFFF.FFE00000,fp0
fmove.l fp0,d1
move.l d1,0(a2,d0.l*4)
addq.l #1,d0
L1070
cmp.l d2,d0
blt.b L1069
L1071
;
bra L1097
L1072
; for (i=0;
moveq #0,d0
bra L1074
L1073
; dst[i*2+0] = FLOAT_T
lea -$7D10(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.d #$.41EFFFFF.FFE00000,fp0
fmove.l fp0,d1
move.l d1,d7
move.l d0,d1
moveq #1,d6
asl.l d6,d1
move.l d7,0(a2,d1.l*4)
; dst[i*2+1] = FLOAT_T
lea -$6410(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.d #$.41EFFFFF.FFE00000,fp0
fmove.l fp0,d1
move.l d1,d7
move.l d0,d1
moveq #1,d6
asl.l d6,d1
lea 4(a2),a0
move.l d7,0(a0,d1.l*4)
addq.l #1,d0
L1074
cmp.l d2,d0
blt.b L1073
L1075
;
bra L1097
L1076
; for (i=0;
moveq #0,d0
bra L1078
L1077
; dst[i*3+0] = FLOAT_T
lea -$1910(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.d #$.41EFFFFF.FFE00000,fp0
fmove.l fp0,d1
move.l d1,d7
move.l d0,d1
muls.l #3,d1
move.l d7,0(a2,d1.l*4)
; dst[i*3+1] = FLOAT_T
lea -$3210(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.d #$.41EFFFFF.FFE00000,fp0
fmove.l fp0,d1
move.l d1,d7
move.l d0,d1
muls.l #3,d1
lea 4(a2),a0
move.l d7,0(a0,d1.l*4)
; dst[i*3+2] = FLOAT_T
lea -$4B10(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.d #$.41EFFFFF.FFE00000,fp0
fmove.l fp0,d1
move.l d1,d7
move.l d0,d1
muls.l #3,d1
lea $8(a2),a0
move.l d7,0(a0,d1.l*4)
addq.l #1,d0
L1078
cmp.l d2,d0
blt L1077
L1079
;
bra L1097
L1080
; for (i=0;
moveq #0,d0
bra L1082
L1081
; dst[i*4+0] = FLOAT_T
lea -$1910(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.d #$.41EFFFFF.FFE00000,fp0
fmove.l fp0,d1
move.l d1,d7
move.l d0,d1
moveq #2,d6
asl.l d6,d1
move.l d7,0(a2,d1.l*4)
; dst[i*4+1] = FLOAT_T
lea -$3210(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.d #$.41EFFFFF.FFE00000,fp0
fmove.l fp0,d1
move.l d1,d7
move.l d0,d1
moveq #2,d6
asl.l d6,d1
lea 4(a2),a0
move.l d7,0(a0,d1.l*4)
; dst[i*4+2] = FLOAT_T
lea -$4B10(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.d #$.41EFFFFF.FFE00000,fp0
fmove.l fp0,d1
move.l d1,d7
move.l d0,d1
moveq #2,d6
asl.l d6,d1
lea $8(a2),a0
move.l d7,0(a0,d1.l*4)
; dst[i*4+3] = FLOAT_T
lea -$6410(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.d #$.41EFFFFF.FFE00000,fp0
fmove.l fp0,d1
move.l d1,d7
move.l d0,d1
moveq #2,d6
asl.l d6,d1
lea $C(a2),a0
move.l d7,0(a0,d1.l*4)
addq.l #1,d0
L1082
cmp.l d2,d0
blt L1081
L1083
;
bra L1097
L1084
; for (i=0;
moveq #0,d0
bra L1086
L1085
; dst[i*3+0] = FLOAT_T
lea -$4B10(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.d #$.41EFFFFF.FFE00000,fp0
fmove.l fp0,d1
move.l d1,d7
move.l d0,d1
muls.l #3,d1
move.l d7,0(a2,d1.l*4)
; dst[i*3+1] = FLOAT_T
lea -$3210(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.d #$.41EFFFFF.FFE00000,fp0
fmove.l fp0,d1
move.l d1,d7
move.l d0,d1
muls.l #3,d1
lea 4(a2),a0
move.l d7,0(a0,d1.l*4)
; dst[i*3+2] = FLOAT_T
lea -$1910(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.d #$.41EFFFFF.FFE00000,fp0
fmove.l fp0,d1
move.l d1,d7
move.l d0,d1
muls.l #3,d1
lea $8(a2),a0
move.l d7,0(a0,d1.l*4)
addq.l #1,d0
L1086
cmp.l d2,d0
blt L1085
L1087
;
bra L1097
L1088
; for (i=0;
moveq #0,d0
bra L1090
L1089
; dst[i*4+0] = FLOAT_T
lea -$4B10(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.d #$.41EFFFFF.FFE00000,fp0
fmove.l fp0,d1
move.l d1,d7
move.l d0,d1
moveq #2,d6
asl.l d6,d1
move.l d7,0(a2,d1.l*4)
; dst[i*4+1] = FLOAT_T
lea -$3210(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.d #$.41EFFFFF.FFE00000,fp0
fmove.l fp0,d1
move.l d1,d7
move.l d0,d1
moveq #2,d6
asl.l d6,d1
lea 4(a2),a0
move.l d7,0(a0,d1.l*4)
; dst[i*4+2] = FLOAT_T
lea -$1910(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.d #$.41EFFFFF.FFE00000,fp0
fmove.l fp0,d1
move.l d1,d7
move.l d0,d1
moveq #2,d6
asl.l d6,d1
lea $8(a2),a0
move.l d7,0(a0,d1.l*4)
; dst[i*4+3] = FLOAT_T
lea -$6410(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.d #$.41EFFFFF.FFE00000,fp0
fmove.l fp0,d1
move.l d1,d7
move.l d0,d1
moveq #2,d6
asl.l d6,d1
lea $C(a2),a0
move.l d7,0(a0,d1.l*4)
addq.l #1,d0
L1090
cmp.l d2,d0
blt L1089
L1091
;
bra L1097
L1092
; for (i=0;
moveq #0,d0
bra L1094
L1093
; dst[i*4+0] = FLOAT_T
lea -$6410(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.d #$.41EFFFFF.FFE00000,fp0
fmove.l fp0,d1
move.l d1,d7
move.l d0,d1
moveq #2,d6
asl.l d6,d1
move.l d7,0(a2,d1.l*4)
; dst[i*4+1] = FLOAT_T
lea -$4B10(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.d #$.41EFFFFF.FFE00000,fp0
fmove.l fp0,d1
move.l d1,d7
move.l d0,d1
moveq #2,d6
asl.l d6,d1
lea 4(a2),a0
move.l d7,0(a0,d1.l*4)
; dst[i*4+2] = FLOAT_T
lea -$3210(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.d #$.41EFFFFF.FFE00000,fp0
fmove.l fp0,d1
move.l d1,d7
move.l d0,d1
moveq #2,d6
asl.l d6,d1
lea $8(a2),a0
move.l d7,0(a0,d1.l*4)
; dst[i*4+3] = FLOAT_T
lea -$1910(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.d #$.41EFFFFF.FFE00000,fp0
fmove.l fp0,d1
move.l d1,d7
move.l d0,d1
moveq #2,d6
asl.l d6,d1
lea $C(a2),a0
move.l d7,0(a0,d1.l*4)
addq.l #1,d0
L1094
cmp.l d2,d0
blt L1093
L1095
;
bra.b L1097
L1096
; gl_problem(ctx, "bad forma
move.l #L830,-(a7)
move.l a3,-(a7)
jsr _gl_problem
addq.w #$8,a7
L1097
; if (ctx->Pack.SwapBytes)
move.l a3,a0
add.l #$E644,a0
tst.b $18(a0)
beq.b L1099
L1098
; gl_swap4( (GLuint *) dst, width*
move.l d2,d0
muls.l -$10(a5),d0
move.l d0,-(a7)
move.l a2,-(a7)
jsr _gl_swap4
addq.w #$8,a7
L1099
;
bra L1299
L1100
; GLint *dst = (GLint *) gl_pixel_addr_i
clr.l -(a7)
move.l d4,-(a7)
clr.l -(a7)
move.l d5,-(a7)
move.l d3,-(a7)
move.l $18(a5),-(a7)
move.l d2,-(a7)
move.l a4,-(a7)
move.l a3,a0
add.l #$E644,a0
pea (a0)
jsr _gl_pixel_addr_in_image
add.w #$24,a7
move.l d0,a2
; switch (format)
move.l d3,d0
cmp.l #$1908,d0
beq L1129
bgt.b L1325
cmp.l #$1905,d0
beq L1109
bgt.b L1326
cmp.l #$1903,d0
beq L1101
cmp.l #$1904,d0
beq L1105
bra L1145
L1326
cmp.l #$1906,d0
beq L1113
cmp.l #$1907,d0
beq L1125
bra L1145
L1325
cmp.l #$8000,d0
beq L1141
bgt.b L1327
cmp.l #$1909,d0
beq L1117
cmp.l #$190A,d0
beq L1121
bra L1145
L1327
cmp.l #$80E0,d0
beq L1133
cmp.l #$80E1,d0
beq L1137
bra L1145
;
L1101
; for (i=0;
moveq #0,d0
bra.b L1103
L1102
; dst[i] = FLOAT_TO_IN
lea -$1910(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.d #$.41DFFFFF.FFC00000,fp0
fmove.l fp0,d1
move.l d1,0(a2,d0.l*4)
addq.l #1,d0
L1103
cmp.l d2,d0
blt.b L1102
L1104
;
bra L1146
L1105
; for (i=0;
moveq #0,d0
bra.b L1107
L1106
; dst[i] = FLOAT_TO_IN
lea -$3210(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.d #$.41DFFFFF.FFC00000,fp0
fmove.l fp0,d1
move.l d1,0(a2,d0.l*4)
addq.l #1,d0
L1107
cmp.l d2,d0
blt.b L1106
L1108
;
bra L1146
L1109
; for (i=0;
moveq #0,d0
bra.b L1111
L1110
; dst[i] = FLOAT_TO_IN
lea -$4B10(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.d #$.41DFFFFF.FFC00000,fp0
fmove.l fp0,d1
move.l d1,0(a2,d0.l*4)
addq.l #1,d0
L1111
cmp.l d2,d0
blt.b L1110
L1112
;
bra L1146
L1113
; for (i=0;
moveq #0,d0
bra.b L1115
L1114
; dst[i] = FLOAT_TO_IN
lea -$6410(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.d #$.41DFFFFF.FFC00000,fp0
fmove.l fp0,d1
move.l d1,0(a2,d0.l*4)
addq.l #1,d0
L1115
cmp.l d2,d0
blt.b L1114
L1116
;
bra L1146
L1117
; for (i=0;
moveq #0,d0
bra.b L1119
L1118
; dst[i] = FLOAT_TO_IN
lea -$7D10(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.d #$.41DFFFFF.FFC00000,fp0
fmove.l fp0,d1
move.l d1,0(a2,d0.l*4)
addq.l #1,d0
L1119
cmp.l d2,d0
blt.b L1118
L1120
;
bra L1146
L1121
; for (i=0;
moveq #0,d0
bra L1123
L1122
; dst[i*2+0] = FLOAT_T
lea -$7D10(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.d #$.41DFFFFF.FFC00000,fp0
fmove.l fp0,d1
move.l d1,d7
move.l d0,d1
moveq #1,d6
asl.l d6,d1
move.l d7,0(a2,d1.l*4)
; dst[i*2+1] = FLOAT_T
lea -$6410(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.d #$.41DFFFFF.FFC00000,fp0
fmove.l fp0,d1
move.l d1,d7
move.l d0,d1
moveq #1,d6
asl.l d6,d1
lea 4(a2),a0
move.l d7,0(a0,d1.l*4)
addq.l #1,d0
L1123
cmp.l d2,d0
blt.b L1122
L1124
;
bra L1146
L1125
; for (i=0;
moveq #0,d0
bra L1127
L1126
; dst[i*3+0] = FLOAT_T
lea -$1910(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.d #$.41DFFFFF.FFC00000,fp0
fmove.l fp0,d1
move.l d1,d7
move.l d0,d1
muls.l #3,d1
move.l d7,0(a2,d1.l*4)
; dst[i*3+1] = FLOAT_T
lea -$3210(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.d #$.41DFFFFF.FFC00000,fp0
fmove.l fp0,d1
move.l d1,d7
move.l d0,d1
muls.l #3,d1
lea 4(a2),a0
move.l d7,0(a0,d1.l*4)
; dst[i*3+2] = FLOAT_T
lea -$4B10(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.d #$.41DFFFFF.FFC00000,fp0
fmove.l fp0,d1
move.l d1,d7
move.l d0,d1
muls.l #3,d1
lea $8(a2),a0
move.l d7,0(a0,d1.l*4)
addq.l #1,d0
L1127
cmp.l d2,d0
blt L1126
L1128
;
bra L1146
L1129
; for (i=0;
moveq #0,d0
bra L1131
L1130
; dst[i*4+0] = FLOAT_T
lea -$1910(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.d #$.41DFFFFF.FFC00000,fp0
fmove.l fp0,d1
move.l d1,d7
move.l d0,d1
moveq #2,d6
asl.l d6,d1
move.l d7,0(a2,d1.l*4)
; dst[i*4+1] = FLOAT_T
lea -$3210(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.d #$.41DFFFFF.FFC00000,fp0
fmove.l fp0,d1
move.l d1,d7
move.l d0,d1
moveq #2,d6
asl.l d6,d1
lea 4(a2),a0
move.l d7,0(a0,d1.l*4)
; dst[i*4+2] = FLOAT_T
lea -$4B10(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.d #$.41DFFFFF.FFC00000,fp0
fmove.l fp0,d1
move.l d1,d7
move.l d0,d1
moveq #2,d6
asl.l d6,d1
lea $8(a2),a0
move.l d7,0(a0,d1.l*4)
; dst[i*4+3] = FLOAT_T
lea -$6410(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.d #$.41DFFFFF.FFC00000,fp0
fmove.l fp0,d1
move.l d1,d7
move.l d0,d1
moveq #2,d6
asl.l d6,d1
lea $C(a2),a0
move.l d7,0(a0,d1.l*4)
addq.l #1,d0
L1131
cmp.l d2,d0
blt L1130
L1132
;
bra L1146
L1133
; for (i=0;
moveq #0,d0
bra L1135
L1134
; dst[i*3+0] = FLOAT_T
lea -$4B10(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.d #$.41DFFFFF.FFC00000,fp0
fmove.l fp0,d1
move.l d1,d7
move.l d0,d1
muls.l #3,d1
move.l d7,0(a2,d1.l*4)
; dst[i*3+1] = FLOAT_T
lea -$3210(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.d #$.41DFFFFF.FFC00000,fp0
fmove.l fp0,d1
move.l d1,d7
move.l d0,d1
muls.l #3,d1
lea 4(a2),a0
move.l d7,0(a0,d1.l*4)
; dst[i*3+2] = FLOAT_T
lea -$1910(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.d #$.41DFFFFF.FFC00000,fp0
fmove.l fp0,d1
move.l d1,d7
move.l d0,d1
muls.l #3,d1
lea $8(a2),a0
move.l d7,0(a0,d1.l*4)
addq.l #1,d0
L1135
cmp.l d2,d0
blt L1134
L1136
;
bra L1146
L1137
; for (i=0;
moveq #0,d0
bra L1139
L1138
; dst[i*4+0] = FLOAT_T
lea -$4B10(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.d #$.41DFFFFF.FFC00000,fp0
fmove.l fp0,d1
move.l d1,d7
move.l d0,d1
moveq #2,d6
asl.l d6,d1
move.l d7,0(a2,d1.l*4)
; dst[i*4+1] = FLOAT_T
lea -$3210(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.d #$.41DFFFFF.FFC00000,fp0
fmove.l fp0,d1
move.l d1,d7
move.l d0,d1
moveq #2,d6
asl.l d6,d1
lea 4(a2),a0
move.l d7,0(a0,d1.l*4)
; dst[i*4+2] = FLOAT_T
lea -$1910(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.d #$.41DFFFFF.FFC00000,fp0
fmove.l fp0,d1
move.l d1,d7
move.l d0,d1
moveq #2,d6
asl.l d6,d1
lea $8(a2),a0
move.l d7,0(a0,d1.l*4)
; dst[i*4+3] = FLOAT_T
lea -$6410(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.d #$.41DFFFFF.FFC00000,fp0
fmove.l fp0,d1
move.l d1,d7
move.l d0,d1
moveq #2,d6
asl.l d6,d1
lea $C(a2),a0
move.l d7,0(a0,d1.l*4)
addq.l #1,d0
L1139
cmp.l d2,d0
blt L1138
L1140
;
bra L1146
L1141
; for (i=0;
moveq #0,d0
bra L1143
L1142
; dst[i*4+0] = FLOAT_T
lea -$6410(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.d #$.41DFFFFF.FFC00000,fp0
fmove.l fp0,d1
move.l d1,d7
move.l d0,d1
moveq #2,d6
asl.l d6,d1
move.l d7,0(a2,d1.l*4)
; dst[i*4+1] = FLOAT_T
lea -$4B10(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.d #$.41DFFFFF.FFC00000,fp0
fmove.l fp0,d1
move.l d1,d7
move.l d0,d1
moveq #2,d6
asl.l d6,d1
lea 4(a2),a0
move.l d7,0(a0,d1.l*4)
; dst[i*4+2] = FLOAT_T
lea -$3210(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.d #$.41DFFFFF.FFC00000,fp0
fmove.l fp0,d1
move.l d1,d7
move.l d0,d1
moveq #2,d6
asl.l d6,d1
lea $8(a2),a0
move.l d7,0(a0,d1.l*4)
; dst[i*4+3] = FLOAT_T
lea -$1910(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.d #$.41DFFFFF.FFC00000,fp0
fmove.l fp0,d1
move.l d1,d7
move.l d0,d1
moveq #2,d6
asl.l d6,d1
lea $C(a2),a0
move.l d7,0(a0,d1.l*4)
addq.l #1,d0
L1143
cmp.l d2,d0
blt L1142
L1144
;
bra.b L1146
L1145
; gl_problem(ctx, "bad forma
move.l #L830,-(a7)
move.l a3,-(a7)
jsr _gl_problem
addq.w #$8,a7
L1146
; if (ctx->Pack.SwapBytes)
move.l a3,a0
add.l #$E644,a0
tst.b $18(a0)
beq.b L1148
L1147
; gl_swap4( (GLuint *) dst, width*n );
move.l d2,d0
muls.l -$10(a5),d0
move.l d0,-(a7)
move.l a2,-(a7)
jsr _gl_swap4
addq.w #$8,a7
L1148
;
bra L1299
L1149
; dst[i*4+1] = blue[i];
clr.l -(a7)
move.l d4,-(a7)
clr.l -(a7)
move.l d5,-(a7)
move.l d3,-(a7)
move.l $18(a5),-(a7)
move.l d2,-(a7)
move.l a4,-(a7)
move.l a3,a0
add.l #$E644,a0
pea (a0)
jsr _gl_pixel_addr_in_image
add.w #$24,a7
move.l d0,a2
; switch (format)
move.l d3,d0
cmp.l #$1908,d0
beq L1178
bgt.b L1328
cmp.l #$1905,d0
beq L1158
bgt.b L1329
cmp.l #$1903,d0
beq L1150
cmp.l #$1904,d0
beq L1154
bra L1194
L1329
cmp.l #$1906,d0
beq L1162
cmp.l #$1907,d0
beq L1174
bra L1194
L1328
cmp.l #$8000,d0
beq L1190
bgt.b L1330
cmp.l #$1909,d0
beq L1166
cmp.l #$190A,d0
beq L1170
bra L1194
L1330
cmp.l #$80E0,d0
beq L1182
cmp.l #$80E1,d0
beq L1186
bra L1194
;
L1150
; for (i=0;
moveq #0,d0
bra.b L1152
L1151
; dst[i] = red[i];
lea -$1910(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmove.s fp0,0(a2,d0.l*4)
addq.l #1,d0
L1152
cmp.l d2,d0
blt.b L1151
L1153
;
bra L1195
L1154
; for (i=0;
moveq #0,d0
bra.b L1156
L1155
; dst[i] = green[i];
lea -$3210(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmove.s fp0,0(a2,d0.l*4)
addq.l #1,d0
L1156
cmp.l d2,d0
blt.b L1155
L1157
;
bra L1195
L1158
; for (i=0;
moveq #0,d0
bra.b L1160
L1159
; dst[i] = blue[i];
lea -$4B10(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmove.s fp0,0(a2,d0.l*4)
addq.l #1,d0
L1160
cmp.l d2,d0
blt.b L1159
L1161
;
bra L1195
L1162
; for (i=0;
moveq #0,d0
bra.b L1164
L1163
; dst[i] = alpha[i];
lea -$6410(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmove.s fp0,0(a2,d0.l*4)
addq.l #1,d0
L1164
cmp.l d2,d0
blt.b L1163
L1165
;
bra L1195
L1166
; for (i=0;
moveq #0,d0
bra.b L1168
L1167
; dst[i] = luminance[i
lea -$7D10(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmove.s fp0,0(a2,d0.l*4)
addq.l #1,d0
L1168
cmp.l d2,d0
blt.b L1167
L1169
;
bra L1195
L1170
; for (i=0;
moveq #0,d0
bra L1172
L1171
; dst[i*2+0] = luminan
lea -$7D10(a5),a0
fmove.s 0(a0,d0.l*4),fp0
move.l d0,d1
moveq #1,d6
asl.l d6,d1
fmove.s fp0,0(a2,d1.l*4)
; dst[i*2+1] = alpha[i
lea -$6410(a5),a0
fmove.s 0(a0,d0.l*4),fp0
move.l d0,d1
moveq #1,d6
asl.l d6,d1
lea 4(a2),a0
fmove.s fp0,0(a0,d1.l*4)
addq.l #1,d0
L1172
cmp.l d2,d0
blt.b L1171
L1173
;
bra L1195
L1174
; for (i=0;
moveq #0,d0
bra L1176
L1175
; dst[i*3+0] = red[i];
lea -$1910(a5),a0
fmove.s 0(a0,d0.l*4),fp0
move.l d0,d1
muls.l #3,d1
fmove.s fp0,0(a2,d1.l*4)
; dst[i*3+1] = green[i
lea -$3210(a5),a0
fmove.s 0(a0,d0.l*4),fp0
move.l d0,d1
muls.l #3,d1
lea 4(a2),a0
fmove.s fp0,0(a0,d1.l*4)
; dst[i*3+2] = blue[i];
lea -$4B10(a5),a0
fmove.s 0(a0,d0.l*4),fp0
move.l d0,d1
muls.l #3,d1
lea $8(a2),a0
fmove.s fp0,0(a0,d1.l*4)
addq.l #1,d0
L1176
cmp.l d2,d0
blt.b L1175
L1177
;
bra L1195
L1178
; for (i=0;
moveq #0,d0
bra L1180
L1179
; dst[i*4+0] = red[i];
lea -$1910(a5),a0
fmove.s 0(a0,d0.l*4),fp0
move.l d0,d1
moveq #2,d6
asl.l d6,d1
fmove.s fp0,0(a2,d1.l*4)
; dst[i*4+1] = green[i
lea -$3210(a5),a0
fmove.s 0(a0,d0.l*4),fp0
move.l d0,d1
moveq #2,d6
asl.l d6,d1
lea 4(a2),a0
fmove.s fp0,0(a0,d1.l*4)
; dst[i*4+2] = blue[i];
lea -$4B10(a5),a0
fmove.s 0(a0,d0.l*4),fp0
move.l d0,d1
moveq #2,d6
asl.l d6,d1
lea $8(a2),a0
fmove.s fp0,0(a0,d1.l*4)
; dst[i*4+3] = alpha[i
lea -$6410(a5),a0
fmove.s 0(a0,d0.l*4),fp0
move.l d0,d1
moveq #2,d6
asl.l d6,d1
lea $C(a2),a0
fmove.s fp0,0(a0,d1.l*4)
addq.l #1,d0
L1180
cmp.l d2,d0
blt.b L1179
L1181
;
bra L1195
L1182
; for (i=0;
moveq #0,d0
bra L1184
L1183
; dst[i*3+0] = blue[i];
lea -$4B10(a5),a0
fmove.s 0(a0,d0.l*4),fp0
move.l d0,d1
muls.l #3,d1
fmove.s fp0,0(a2,d1.l*4)
; dst[i*3+1] = green[i
lea -$3210(a5),a0
fmove.s 0(a0,d0.l*4),fp0
move.l d0,d1
muls.l #3,d1
lea 4(a2),a0
fmove.s fp0,0(a0,d1.l*4)
; dst[i*3+2] = red[i];
lea -$1910(a5),a0
fmove.s 0(a0,d0.l*4),fp0
move.l d0,d1
muls.l #3,d1
lea $8(a2),a0
fmove.s fp0,0(a0,d1.l*4)
addq.l #1,d0
L1184
cmp.l d2,d0
blt.b L1183
L1185
;
bra L1195
L1186
; for (i=0;
moveq #0,d0
bra L1188
L1187
; dst[i*4+0] = blue[i];
lea -$4B10(a5),a0
fmove.s 0(a0,d0.l*4),fp0
move.l d0,d1
moveq #2,d6
asl.l d6,d1
fmove.s fp0,0(a2,d1.l*4)
; dst[i*4+1] = green[i
lea -$3210(a5),a0
fmove.s 0(a0,d0.l*4),fp0
move.l d0,d1
moveq #2,d6
asl.l d6,d1
lea 4(a2),a0
fmove.s fp0,0(a0,d1.l*4)
; dst[i*4+2] = red[i];
lea -$1910(a5),a0
fmove.s 0(a0,d0.l*4),fp0
move.l d0,d1
moveq #2,d6
asl.l d6,d1
lea $8(a2),a0
fmove.s fp0,0(a0,d1.l*4)
; dst[i*4+3] = alpha[i
lea -$6410(a5),a0
fmove.s 0(a0,d0.l*4),fp0
move.l d0,d1
moveq #2,d6
asl.l d6,d1
lea $C(a2),a0
fmove.s fp0,0(a0,d1.l*4)
addq.l #1,d0
L1188
cmp.l d2,d0
blt.b L1187
L1189
;
bra L1195
L1190
; for (i=0;
moveq #0,d0
bra L1192
L1191
; dst[i*4+0] = alpha[i
lea -$6410(a5),a0
fmove.s 0(a0,d0.l*4),fp0
move.l d0,d1
moveq #2,d6
asl.l d6,d1
fmove.s fp0,0(a2,d1.l*4)
; dst[i*4+1] = blue[i];
lea -$4B10(a5),a0
fmove.s 0(a0,d0.l*4),fp0
move.l d0,d1
moveq #2,d6
asl.l d6,d1
lea 4(a2),a0
fmove.s fp0,0(a0,d1.l*4)
; dst[i*4+2] = green[i
lea -$3210(a5),a0
fmove.s 0(a0,d0.l*4),fp0
move.l d0,d1
moveq #2,d6
asl.l d6,d1
lea $8(a2),a0
fmove.s fp0,0(a0,d1.l*4)
; dst[i*4+3] = red[i];
lea -$1910(a5),a0
fmove.s 0(a0,d0.l*4),fp0
move.l d0,d1
moveq #2,d6
asl.l d6,d1
lea $C(a2),a0
fmove.s fp0,0(a0,d1.l*4)
addq.l #1,d0
L1192
cmp.l d2,d0
blt.b L1191
L1193
;
bra.b L1195
L1194
; gl_problem(ctx, "bad forma
move.l #L830,-(a7)
move.l a3,-(a7)
jsr _gl_problem
addq.w #$8,a7
L1195
; if (ctx->Pack.SwapBytes)
move.l a3,a0
add.l #$E644,a0
tst.b $18(a0)
beq.b L1197
L1196
; gl_swap4( (GLuint *) dst, width*n );
move.l d2,d0
muls.l -$10(a5),d0
move.l d0,-(a7)
move.l a2,-(a7)
jsr _gl_swap4
addq.w #$8,a7
L1197
;
bra L1299
L1198
; if (format == GL_RGB)
cmp.l #$1907,d3
bne L1202
L1199
; GLubyte *dst = (GLubyte *) gl_pixel_ad
clr.l -(a7)
move.l d4,-(a7)
clr.l -(a7)
move.l d5,-(a7)
move.l d3,-(a7)
move.l $18(a5),-(a7)
move.l d2,-(a7)
move.l a4,-(a7)
move.l a3,a0
add.l #$E644,a0
pea (a0)
jsr _gl_pixel_addr_in_image
add.w #$24,a7
move.l d0,a1
; for (i=0;
moveq #0,d0
bra L1201
L1200
; dst[i] = (((GLint) (red[i] * 7
lea -$1910(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.s #$.40E00000,fp0
fmove.l fp0,d1
moveq #5,d6
asl.l d6,d1
lea -$3210(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.s #$.40E00000,fp0
fmove.l fp0,d6
moveq #2,d7
asl.l d7,d6
or.l d6,d1
lea -$4B10(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.s #$.40400000,fp0
fmove.l fp0,d6
or.l d6,d1
move.b d1,0(a1,d0.l)
addq.l #1,d0
L1201
cmp.l d2,d0
blt.b L1200
L1202
;
bra L1299
L1203
; if (format == GL_RGB)
cmp.l #$1907,d3
bne L1207
L1204
; GLubyte *dst = (GLubyte *) gl_pixel_ad
clr.l -(a7)
move.l d4,-(a7)
clr.l -(a7)
move.l d5,-(a7)
move.l d3,-(a7)
move.l $18(a5),-(a7)
move.l d2,-(a7)
move.l a4,-(a7)
move.l a3,a0
add.l #$E644,a0
pea (a0)
jsr _gl_pixel_addr_in_image
add.w #$24,a7
move.l d0,a1
; for (i=0;
moveq #0,d0
bra L1206
L1205
; dst[i] = (((GLint) (red[i] * 7
lea -$1910(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.s #$.40E00000,fp0
fmove.l fp0,d1
lea -$3210(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.s #$.40E00000,fp0
fmove.l fp0,d6
moveq #3,d7
asl.l d7,d6
or.l d6,d1
lea -$4B10(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.s #$.40400000,fp0
fmove.l fp0,d6
moveq #5,d7
asl.l d7,d6
or.l d6,d1
move.b d1,0(a1,d0.l)
addq.l #1,d0
L1206
cmp.l d2,d0
blt.b L1205
L1207
;
bra L1299
L1208
; if (format == GL_RGB)
cmp.l #$1907,d3
bne L1212
L1209
; GLushort *dst = (GLushort *) gl_pixel_
clr.l -(a7)
move.l d4,-(a7)
clr.l -(a7)
move.l d5,-(a7)
move.l d3,-(a7)
move.l $18(a5),-(a7)
move.l d2,-(a7)
move.l a4,-(a7)
move.l a3,a0
add.l #$E644,a0
pea (a0)
jsr _gl_pixel_addr_in_image
add.w #$24,a7
move.l d0,a1
; for (i=0;
moveq #0,d0
bra L1211
L1210
; dst[i] = (((GLint) (red[i] * 3
lea -$1910(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.s #$.41F80000,fp0
fmove.l fp0,d1
moveq #$B,d6
asl.l d6,d1
lea -$3210(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.s #$.427C0000,fp0
fmove.l fp0,d6
moveq #5,d7
asl.l d7,d6
or.l d6,d1
lea -$4B10(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.s #$.41F80000,fp0
fmove.l fp0,d6
or.l d6,d1
move.w d1,0(a1,d0.l*2)
addq.l #1,d0
L1211
cmp.l d2,d0
blt.b L1210
L1212
;
bra L1299
L1213
; if (format == GL_RGB)
cmp.l #$1907,d3
bne L1217
L1214
; GLushort *dst = (GLushort *) gl_pixel_
clr.l -(a7)
move.l d4,-(a7)
clr.l -(a7)
move.l d5,-(a7)
move.l d3,-(a7)
move.l $18(a5),-(a7)
move.l d2,-(a7)
move.l a4,-(a7)
move.l a3,a0
add.l #$E644,a0
pea (a0)
jsr _gl_pixel_addr_in_image
add.w #$24,a7
move.l d0,a1
; for (i=0;
moveq #0,d0
bra L1216
L1215
; dst[i] = (((GLint) (red[i] * 3
lea -$1910(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.s #$.41F80000,fp0
fmove.l fp0,d1
lea -$3210(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.s #$.427C0000,fp0
fmove.l fp0,d6
moveq #5,d7
asl.l d7,d6
or.l d6,d1
lea -$4B10(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.s #$.41F80000,fp0
fmove.l fp0,d6
moveq #$B,d7
asl.l d7,d6
or.l d6,d1
move.w d1,0(a1,d0.l*2)
addq.l #1,d0
L1216
cmp.l d2,d0
blt.b L1215
L1217
;
bra L1299
L1218
; if (format == GL_RGB)
cmp.l #$1907,d3
bne L1222
L1219
; GLushort *dst = (GLushort *) gl_pixel_
clr.l -(a7)
move.l d4,-(a7)
clr.l -(a7)
move.l d5,-(a7)
move.l d3,-(a7)
move.l $18(a5),-(a7)
move.l d2,-(a7)
move.l a4,-(a7)
move.l a3,a0
add.l #$E644,a0
pea (a0)
jsr _gl_pixel_addr_in_image
add.w #$24,a7
move.l d0,a1
; for (i=0;
moveq #0,d0
bra L1221
L1220
; dst[i] = (((GLint) (red[i] * 1
lea -$1910(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.s #$.41700000,fp0
fmove.l fp0,d1
moveq #$C,d6
asl.l d6,d1
lea -$3210(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.s #$.41700000,fp0
fmove.l fp0,d6
moveq #$8,d7
asl.l d7,d6
or.l d6,d1
lea -$4B10(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.s #$.41700000,fp0
fmove.l fp0,d6
moveq #4,d7
asl.l d7,d6
or.l d6,d1
lea -$6410(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.s #$.41700000,fp0
fmove.l fp0,d6
or.l d6,d1
move.w d1,0(a1,d0.l*2)
addq.l #1,d0
L1221
cmp.l d2,d0
blt.b L1220
L1222
;
bra L1299
L1223
; if (format == GL_RGB)
cmp.l #$1907,d3
bne L1227
L1224
; GLushort *dst = (GLushort *) gl_pixel_
clr.l -(a7)
move.l d4,-(a7)
clr.l -(a7)
move.l d5,-(a7)
move.l d3,-(a7)
move.l $18(a5),-(a7)
move.l d2,-(a7)
move.l a4,-(a7)
move.l a3,a0
add.l #$E644,a0
pea (a0)
jsr _gl_pixel_addr_in_image
add.w #$24,a7
move.l d0,a1
; for (i=0;
moveq #0,d0
bra L1226
L1225
; dst[i] = (((GLint) (red[i] * 1
lea -$1910(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.s #$.41700000,fp0
fmove.l fp0,d1
lea -$3210(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.s #$.41700000,fp0
fmove.l fp0,d6
moveq #4,d7
asl.l d7,d6
or.l d6,d1
lea -$4B10(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.s #$.41700000,fp0
fmove.l fp0,d6
moveq #$8,d7
asl.l d7,d6
or.l d6,d1
lea -$6410(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.s #$.41700000,fp0
fmove.l fp0,d6
moveq #$C,d7
asl.l d7,d6
or.l d6,d1
move.w d1,0(a1,d0.l*2)
addq.l #1,d0
L1226
cmp.l d2,d0
blt.b L1225
L1227
;
bra L1299
L1228
; if (format == GL_RGB)
cmp.l #$1907,d3
bne L1232
L1229
; GLushort *dst = (GLushort *) gl_pixel_
clr.l -(a7)
move.l d4,-(a7)
clr.l -(a7)
move.l d5,-(a7)
move.l d3,-(a7)
move.l $18(a5),-(a7)
move.l d2,-(a7)
move.l a4,-(a7)
move.l a3,a0
add.l #$E644,a0
pea (a0)
jsr _gl_pixel_addr_in_image
add.w #$24,a7
move.l d0,a1
; for (i=0;
moveq #0,d0
bra L1231
L1230
; dst[i] = (((GLint) (red[i] * 3
lea -$1910(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.s #$.41F80000,fp0
fmove.l fp0,d1
moveq #$B,d6
asl.l d6,d1
lea -$3210(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.s #$.41F80000,fp0
fmove.l fp0,d6
moveq #6,d7
asl.l d7,d6
or.l d6,d1
lea -$4B10(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.s #$.41F80000,fp0
fmove.l fp0,d6
moveq #1,d7
asl.l d7,d6
or.l d6,d1
lea -$6410(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.s #$.3F800000,fp0
fmove.l fp0,d6
or.l d6,d1
move.w d1,0(a1,d0.l*2)
addq.l #1,d0
L1231
cmp.l d2,d0
blt.b L1230
L1232
;
bra L1299
L1233
; if (format == GL_RGB)
cmp.l #$1907,d3
bne L1237
L1234
; GLushort *dst = (GLushort *) gl_pixel_
clr.l -(a7)
move.l d4,-(a7)
clr.l -(a7)
move.l d5,-(a7)
move.l d3,-(a7)
move.l $18(a5),-(a7)
move.l d2,-(a7)
move.l a4,-(a7)
move.l a3,a0
add.l #$E644,a0
pea (a0)
jsr _gl_pixel_addr_in_image
add.w #$24,a7
move.l d0,a1
; for (i=0;
moveq #0,d0
bra L1236
L1235
; dst[i] = (((GLint) (red[i] * 3
lea -$1910(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.s #$.41F80000,fp0
fmove.l fp0,d1
lea -$3210(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.s #$.41F80000,fp0
fmove.l fp0,d6
moveq #5,d7
asl.l d7,d6
or.l d6,d1
lea -$4B10(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.s #$.41F80000,fp0
fmove.l fp0,d6
moveq #$A,d7
asl.l d7,d6
or.l d6,d1
lea -$6410(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.s #$.3F800000,fp0
fmove.l fp0,d6
moveq #$F,d7
asl.l d7,d6
or.l d6,d1
move.w d1,0(a1,d0.l*2)
addq.l #1,d0
L1236
cmp.l d2,d0
blt.b L1235
L1237
;
bra L1299
L1238
; if (format == GL_RGBA)
cmp.l #$1908,d3
bne L1243
L1239
; GLuint *dst = (GLuint *) gl_pixel_addr
clr.l -(a7)
move.l d4,-(a7)
clr.l -(a7)
move.l d5,-(a7)
move.l d3,-(a7)
move.l $18(a5),-(a7)
move.l d2,-(a7)
move.l a4,-(a7)
move.l a3,a0
add.l #$E644,a0
pea (a0)
jsr _gl_pixel_addr_in_image
add.w #$24,a7
move.l d0,a1
; for (i=0;
moveq #0,d0
bra L1241
L1240
; dst[i] = (((GLint) (red[i] * 2
lea -$1910(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.s #$.437F0000,fp0
fmove.l fp0,d1
moveq #$18,d6
asl.l d6,d1
lea -$3210(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.s #$.437F0000,fp0
fmove.l fp0,d6
moveq #$10,d7
asl.l d7,d6
or.l d6,d1
lea -$4B10(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.s #$.437F0000,fp0
fmove.l fp0,d6
moveq #$8,d7
asl.l d7,d6
or.l d6,d1
lea -$6410(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.s #$.437F0000,fp0
fmove.l fp0,d6
or.l d6,d1
move.l d1,0(a1,d0.l*4)
addq.l #1,d0
L1241
cmp.l d2,d0
blt.b L1240
L1242
bra L1252
L1243
; else if (format == GL_BGRA)
cmp.l #$80E1,d3
bne L1248
L1244
; GLushort *dst = (GLushort *) gl_pixel_
clr.l -(a7)
move.l d4,-(a7)
clr.l -(a7)
move.l d5,-(a7)
move.l d3,-(a7)
move.l $18(a5),-(a7)
move.l d2,-(a7)
move.l a4,-(a7)
move.l a3,a0
add.l #$E644,a0
pea (a0)
jsr _gl_pixel_addr_in_image
add.w #$24,a7
move.l d0,a1
; for (i=0;
moveq #0,d0
bra L1246
L1245
; dst[i] = (((GLint) (blue[i] * 2
lea -$4B10(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.s #$.437F0000,fp0
fmove.l fp0,d1
moveq #$18,d6
asl.l d6,d1
lea -$3210(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.s #$.437F0000,fp0
fmove.l fp0,d6
moveq #$10,d7
asl.l d7,d6
or.l d6,d1
lea -$1910(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.s #$.437F0000,fp0
fmove.l fp0,d6
moveq #$8,d7
asl.l d7,d6
or.l d6,d1
lea -$6410(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.s #$.437F0000,fp0
fmove.l fp0,d6
or.l d6,d1
move.w d1,0(a1,d0.l*2)
addq.l #1,d0
L1246
cmp.l d2,d0
blt.b L1245
L1247
bra L1252
L1248
; else if (format == GL_ABGR_EXT)
cmp.l #$8000,d3
bne L1252
L1249
; GLushort *dst = (GLushort *) gl_pixel_
clr.l -(a7)
move.l d4,-(a7)
clr.l -(a7)
move.l d5,-(a7)
move.l d3,-(a7)
move.l $18(a5),-(a7)
move.l d2,-(a7)
move.l a4,-(a7)
move.l a3,a0
add.l #$E644,a0
pea (a0)
jsr _gl_pixel_addr_in_image
add.w #$24,a7
move.l d0,a1
; for (i=0;
moveq #0,d0
bra L1251
L1250
; dst[i] = (((GLint) (alpha[i] * 2
lea -$6410(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.s #$.437F0000,fp0
fmove.l fp0,d1
moveq #$18,d6
asl.l d6,d1
lea -$4B10(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.s #$.437F0000,fp0
fmove.l fp0,d6
moveq #$10,d7
asl.l d7,d6
or.l d6,d1
lea -$3210(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.s #$.437F0000,fp0
fmove.l fp0,d6
moveq #$8,d7
asl.l d7,d6
or.l d6,d1
lea -$1910(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.s #$.437F0000,fp0
fmove.l fp0,d6
or.l d6,d1
move.w d1,0(a1,d0.l*2)
addq.l #1,d0
L1251
cmp.l d2,d0
blt.b L1250
L1252
;
bra L1299
L1253
; if (format == GL_RGBA)
cmp.l #$1908,d3
bne L1258
L1254
; GLuint *dst = (GLuint *) gl_pixel_addr
clr.l -(a7)
move.l d4,-(a7)
clr.l -(a7)
move.l d5,-(a7)
move.l d3,-(a7)
move.l $18(a5),-(a7)
move.l d2,-(a7)
move.l a4,-(a7)
move.l a3,a0
add.l #$E644,a0
pea (a0)
jsr _gl_pixel_addr_in_image
add.w #$24,a7
move.l d0,a1
; for (i=0;
moveq #0,d0
bra L1256
L1255
; dst[i] = (((GLint) (red[i] * 2
lea -$1910(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.s #$.437F0000,fp0
fmove.l fp0,d1
lea -$3210(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.s #$.437F0000,fp0
fmove.l fp0,d6
moveq #$8,d7
asl.l d7,d6
or.l d6,d1
lea -$4B10(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.s #$.437F0000,fp0
fmove.l fp0,d6
moveq #$10,d7
asl.l d7,d6
or.l d6,d1
lea -$6410(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.s #$.437F0000,fp0
fmove.l fp0,d6
moveq #$18,d7
asl.l d7,d6
or.l d6,d1
move.l d1,0(a1,d0.l*4)
addq.l #1,d0
L1256
cmp.l d2,d0
blt.b L1255
L1257
bra L1267
L1258
; else if (format == GL_BGRA)
cmp.l #$80E1,d3
bne L1263
L1259
; GLushort *dst = (GLushort *) gl_pixel_
clr.l -(a7)
move.l d4,-(a7)
clr.l -(a7)
move.l d5,-(a7)
move.l d3,-(a7)
move.l $18(a5),-(a7)
move.l d2,-(a7)
move.l a4,-(a7)
move.l a3,a0
add.l #$E644,a0
pea (a0)
jsr _gl_pixel_addr_in_image
add.w #$24,a7
move.l d0,a1
; for (i=0;
moveq #0,d0
bra L1261
L1260
; dst[i] = (((GLint) (blue[i] * 2
lea -$4B10(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.s #$.437F0000,fp0
fmove.l fp0,d1
lea -$3210(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.s #$.437F0000,fp0
fmove.l fp0,d6
moveq #$8,d7
asl.l d7,d6
or.l d6,d1
lea -$1910(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.s #$.437F0000,fp0
fmove.l fp0,d6
moveq #$10,d7
asl.l d7,d6
or.l d6,d1
lea -$6410(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.s #$.437F0000,fp0
fmove.l fp0,d6
moveq #$18,d7
asl.l d7,d6
or.l d6,d1
move.w d1,0(a1,d0.l*2)
addq.l #1,d0
L1261
cmp.l d2,d0
blt.b L1260
L1262
bra L1267
L1263
; else if (format == GL_ABGR_EXT)
cmp.l #$8000,d3
bne L1267
L1264
; GLushort *dst = (GLushort *) gl_pixel_
clr.l -(a7)
move.l d4,-(a7)
clr.l -(a7)
move.l d5,-(a7)
move.l d3,-(a7)
move.l $18(a5),-(a7)
move.l d2,-(a7)
move.l a4,-(a7)
move.l a3,a0
add.l #$E644,a0
pea (a0)
jsr _gl_pixel_addr_in_image
add.w #$24,a7
move.l d0,a1
; for (i=0;
moveq #0,d0
bra L1266
L1265
; dst[i] = (((GLint) (alpha[i] * 2
lea -$6410(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.s #$.437F0000,fp0
fmove.l fp0,d1
lea -$4B10(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.s #$.437F0000,fp0
fmove.l fp0,d6
moveq #$8,d7
asl.l d7,d6
or.l d6,d1
lea -$3210(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.s #$.437F0000,fp0
fmove.l fp0,d6
moveq #$10,d7
asl.l d7,d6
or.l d6,d1
lea -$1910(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.s #$.437F0000,fp0
fmove.l fp0,d6
moveq #$18,d7
asl.l d7,d6
or.l d6,d1
move.w d1,0(a1,d0.l*2)
addq.l #1,d0
L1266
cmp.l d2,d0
blt.b L1265
L1267
;
bra L1299
L1268
; if (format == GL_RGBA)
cmp.l #$1908,d3
bne L1273
L1269
; GLuint *dst = (GLuint *) gl_pixel_addr
clr.l -(a7)
move.l d4,-(a7)
clr.l -(a7)
move.l d5,-(a7)
move.l d3,-(a7)
move.l $18(a5),-(a7)
move.l d2,-(a7)
move.l a4,-(a7)
move.l a3,a0
add.l #$E644,a0
pea (a0)
jsr _gl_pixel_addr_in_image
add.w #$24,a7
move.l d0,a1
; for (i=0;
moveq #0,d0
bra L1271
L1270
; dst[i] = (((GLint) (red[i] * 1
lea -$1910(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.s #$.447FC000,fp0
fmove.l fp0,d1
moveq #$16,d6
asl.l d6,d1
lea -$3210(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.s #$.447FC000,fp0
fmove.l fp0,d6
moveq #$C,d7
asl.l d7,d6
or.l d6,d1
lea -$4B10(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.s #$.447FC000,fp0
fmove.l fp0,d6
moveq #2,d7
asl.l d7,d6
or.l d6,d1
lea -$6410(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.s #$.40400000,fp0
fmove.l fp0,d6
or.l d6,d1
move.l d1,0(a1,d0.l*4)
addq.l #1,d0
L1271
cmp.l d2,d0
blt.b L1270
L1272
bra L1282
L1273
; else if (format == GL_BGRA)
cmp.l #$80E1,d3
bne L1278
L1274
; GLushort *dst = (GLushort *) gl_pixel_
clr.l -(a7)
move.l d4,-(a7)
clr.l -(a7)
move.l d5,-(a7)
move.l d3,-(a7)
move.l $18(a5),-(a7)
move.l d2,-(a7)
move.l a4,-(a7)
move.l a3,a0
add.l #$E644,a0
pea (a0)
jsr _gl_pixel_addr_in_image
add.w #$24,a7
move.l d0,a1
; for (i=0;
moveq #0,d0
bra L1276
L1275
; dst[i] = (((GLint) (blue[i] * 1
lea -$4B10(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.s #$.447FC000,fp0
fmove.l fp0,d1
moveq #$16,d6
asl.l d6,d1
lea -$3210(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.s #$.447FC000,fp0
fmove.l fp0,d6
moveq #$C,d7
asl.l d7,d6
or.l d6,d1
lea -$1910(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.s #$.447FC000,fp0
fmove.l fp0,d6
moveq #2,d7
asl.l d7,d6
or.l d6,d1
lea -$6410(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.s #$.40400000,fp0
fmove.l fp0,d6
or.l d6,d1
move.w d1,0(a1,d0.l*2)
addq.l #1,d0
L1276
cmp.l d2,d0
blt.b L1275
L1277
bra L1282
L1278
; else if (format == GL_ABGR_EXT)
cmp.l #$8000,d3
bne L1282
L1279
; GLushort *dst = (GLushort *) gl_pixel_
clr.l -(a7)
move.l d4,-(a7)
clr.l -(a7)
move.l d5,-(a7)
move.l d3,-(a7)
move.l $18(a5),-(a7)
move.l d2,-(a7)
move.l a4,-(a7)
move.l a3,a0
add.l #$E644,a0
pea (a0)
jsr _gl_pixel_addr_in_image
add.w #$24,a7
move.l d0,a1
; for (i=0;
moveq #0,d0
bra L1281
L1280
; dst[i] = (((GLint) (alpha[i] * 1
lea -$6410(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.s #$.447FC000,fp0
fmove.l fp0,d1
moveq #$16,d6
asl.l d6,d1
lea -$4B10(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.s #$.447FC000,fp0
fmove.l fp0,d6
moveq #$C,d7
asl.l d7,d6
or.l d6,d1
lea -$3210(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.s #$.447FC000,fp0
fmove.l fp0,d6
moveq #2,d7
asl.l d7,d6
or.l d6,d1
lea -$1910(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.s #$.40400000,fp0
fmove.l fp0,d6
or.l d6,d1
move.w d1,0(a1,d0.l*2)
addq.l #1,d0
L1281
cmp.l d2,d0
blt.b L1280
L1282
;
bra L1299
L1283
; if (format == GL_RGBA)
cmp.l #$1908,d3
bne L1288
L1284
; GLuint *dst = (GLuint *) gl_pixel_addr
clr.l -(a7)
move.l d4,-(a7)
clr.l -(a7)
move.l d5,-(a7)
move.l d3,-(a7)
move.l $18(a5),-(a7)
move.l d2,-(a7)
move.l a4,-(a7)
move.l a3,a0
add.l #$E644,a0
pea (a0)
jsr _gl_pixel_addr_in_image
add.w #$24,a7
move.l d0,a1
; for (i=0;
moveq #0,d0
bra L1286
L1285
; dst[i] = (((GLint) (red[i] * 1
lea -$1910(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.s #$.447FC000,fp0
fmove.l fp0,d1
lea -$3210(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.s #$.447FC000,fp0
fmove.l fp0,d6
moveq #$A,d7
asl.l d7,d6
or.l d6,d1
lea -$4B10(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.s #$.447FC000,fp0
fmove.l fp0,d6
moveq #$14,d7
asl.l d7,d6
or.l d6,d1
lea -$6410(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.s #$.40400000,fp0
fmove.l fp0,d6
moveq #$1E,d7
asl.l d7,d6
or.l d6,d1
move.l d1,0(a1,d0.l*4)
addq.l #1,d0
L1286
cmp.l d2,d0
blt.b L1285
L1287
bra L1297
L1288
; else if (format == GL_BGRA)
cmp.l #$80E1,d3
bne L1293
L1289
; GLushort *dst = (GLushort *) gl_pixel_
clr.l -(a7)
move.l d4,-(a7)
clr.l -(a7)
move.l d5,-(a7)
move.l d3,-(a7)
move.l $18(a5),-(a7)
move.l d2,-(a7)
move.l a4,-(a7)
move.l a3,a0
add.l #$E644,a0
pea (a0)
jsr _gl_pixel_addr_in_image
add.w #$24,a7
move.l d0,a1
; for (i=0;
moveq #0,d0
bra L1291
L1290
; dst[i] = (((GLint) (blue[i] * 1
lea -$4B10(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.s #$.447FC000,fp0
fmove.l fp0,d1
lea -$3210(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.s #$.447FC000,fp0
fmove.l fp0,d6
moveq #$A,d7
asl.l d7,d6
or.l d6,d1
lea -$1910(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.s #$.447FC000,fp0
fmove.l fp0,d6
moveq #$14,d7
asl.l d7,d6
or.l d6,d1
lea -$6410(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.s #$.40400000,fp0
fmove.l fp0,d6
moveq #$1E,d7
asl.l d7,d6
or.l d6,d1
move.w d1,0(a1,d0.l*2)
addq.l #1,d0
L1291
cmp.l d2,d0
blt.b L1290
L1292
bra L1297
L1293
; else if (format == GL_ABGR_EXT)
cmp.l #$8000,d3
bne L1297
L1294
; GLushort *dst = (GLushort *) gl_pixel_
clr.l -(a7)
move.l d4,-(a7)
clr.l -(a7)
move.l d5,-(a7)
move.l d3,-(a7)
move.l $18(a5),-(a7)
move.l d2,-(a7)
move.l a4,-(a7)
move.l a3,a0
add.l #$E644,a0
pea (a0)
jsr _gl_pixel_addr_in_image
add.w #$24,a7
move.l d0,a1
; for (i=0;
moveq #0,d0
bra L1296
L1295
; dst[i] = (((GLint) (alpha[i] * 1
lea -$6410(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.s #$.447FC000,fp0
fmove.l fp0,d1
lea -$4B10(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.s #$.447FC000,fp0
fmove.l fp0,d6
moveq #$A,d7
asl.l d7,d6
or.l d6,d1
lea -$3210(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.s #$.447FC000,fp0
fmove.l fp0,d6
moveq #$14,d7
asl.l d7,d6
or.l d6,d1
lea -$1910(a5),a0
fmove.s 0(a0,d0.l*4),fp0
fmul.s #$.40400000,fp0
fmove.l fp0,d6
moveq #$1E,d7
asl.l d7,d6
or.l d6,d1
move.w d1,0(a1,d0.l*2)
addq.l #1,d0
L1296
cmp.l d2,d0
blt.b L1295
L1297
;
bra.b L1299
L1298
; gl_error( ctx, GL_INVALID_ENUM, "glReadPixel
move.l #L829,-(a7)
pea $500.w
move.l a3,-(a7)
jsr _gl_error
add.w #$C,a7
L1299
addq.l #1,d4
addq.l #1,$10(a5)
L1300
cmp.l $18(a5),d4
blt L836
L1301
fmovem.x (a7)+,fp2/fp3/fp4/fp5
movem.l (a7)+,d2-d7/a2-a4
unlk a5
rts
L830
dc.b 'bad format in glReadPixels',$A,0
L828
dc.b 'glReadPixels(format)',0
L829
dc.b 'glReadPixels(type)',0
SECTION "_gl_ReadPixels:0",CODE
;void gl_ReadPixels( GLcontext *ctx,
XDEF _gl_ReadPixels
_gl_ReadPixels
movem.l d2-d7/a2/a3,-(a7)
movem.l $28(a7),d2-d5/d7
movem.l $3C(a7),d6/a3
move.l $24(a7),a2
L1334
; if (INSIDE_BEGIN_END(ctx))
move.l a2,a0
add.l #$E968,a0
move.l (a0),d0
cmp.l #$1A00,d0
beq.b L1336
L1335
; gl_error( ctx, GL_INVALID_OPERATION, "glReadPixels" );
move.l #L1331,-(a7)
pea $502.w
move.l a2,-(a7)
jsr _gl_error
add.w #$C,a7
movem.l (a7)+,d2-d7/a2/a3
rts
L1336
; if (!pixels)
cmp.w #0,a3
bne.b L1338
L1337
; gl_error( ctx, GL_INVALID_VALUE, "glReadPixels(pixels)" )
move.l #L1332,-(a7)
pea $501.w
move.l a2,-(a7)
jsr _gl_error
add.w #$C,a7
movem.l (a7)+,d2-d7/a2/a3
rts
L1338
; (void) (*ctx->Driver.SetBuffer)( ctx, ctx->Pixel.ReadBuffer );
move.l a2,a0
add.l #$B168,a0
move.l (a0),-(a7)
move.l a2,-(a7)
move.l $91C(a2),a0
jsr (a0)
addq.w #$8,a7
; switch (format)
move.l d7,d0
cmp.l #$1907,d0
beq L1342
bgt.b L1347
sub.l #$1900,d0
cmp.l #6,d0
bhi L1345
move.l L1348(pc,d0.l*4),a0
jmp (a0)
L1348
dc.l L1339
dc.l L1340
dc.l L1341
dc.l L1342
dc.l L1342
dc.l L1342
dc.l L1342
L1347
cmp.l #$8000,d0
beq L1342
bgt.b L1349
cmp.l #$1909,d0
beq L1342
bgt.b L1350
blt.b L1342
L1350
cmp.l #$190A,d0
beq.b L1342
bra L1345
L1349
cmp.l #$80E0,d0
beq.b L1342
cmp.l #$80E1,d0
beq.b L1342
bra L1345
;
L1339
; read_index_pixels( ctx, x, y, width, height, type,
move.l a3,-(a7)
move.l d6,-(a7)
move.l d5,-(a7)
move.l d4,-(a7)
move.l d3,-(a7)
move.l d2,-(a7)
move.l a2,-(a7)
jsr _read_index_pixels
add.w #$1C,a7
;
bra L1346
L1340
; read_stencil_pixels( ctx, x, y, width, height, type, pixels );
move.l a3,-(a7)
move.l d6,-(a7)
move.l d5,-(a7)
move.l d4,-(a7)
move.l d3,-(a7)
move.l d2,-(a7)
move.l a2,-(a7)
jsr _read_stencil_pixels
add.w #$1C,a7
;
bra.b L1346
L1341
; read_depth_pixels( ctx, x, y, width, height, type, pixels );
move.l a3,-(a7)
move.l d6,-(a7)
move.l d5,-(a7)
move.l d4,-(a7)
move.l d3,-(a7)
move.l d2,-(a7)
move.l a2,-(a7)
jsr _read_depth_pixels
add.w #$1C,a7
;
bra.b L1346
L1342
; if (!read_fast_rgba_pixels( ctx, x, y, width, heig
move.l a3,-(a7)
move.l d6,-(a7)
move.l d7,-(a7)
move.l d5,-(a7)
move.l d4,-(a7)
move.l d3,-(a7)
move.l d2,-(a7)
move.l a2,-(a7)
jsr _read_fast_rgba_pixels
add.w #$20,a7
tst.b d0
bne.b L1344
L1343
; read_rgba_pixels( ctx, x, y, width, height,
move.l a3,-(a7)
move.l d6,-(a7)
move.l d7,-(a7)
move.l d5,-(a7)
move.l d4,-(a7)
move.l d3,-(a7)
move.l d2,-(a7)
move.l a2,-(a7)
jsr _read_rgba_pixels
add.w #$20,a7
L1344
;
bra.b L1346
L1345
; gl_error( ctx, GL_INVALID_ENUM, "glReadPixels(format)" );
move.l #L1333,-(a7)
pea $500.w
move.l a2,-(a7)
jsr _gl_error
add.w #$C,a7
L1346
; (void) (*ctx->Driver.SetBuffer)( ctx, ctx->Color.DrawBuffer );
move.l $21E2(a2),-(a7)
move.l a2,-(a7)
move.l $91C(a2),a0
jsr (a0)
addq.w #$8,a7
movem.l (a7)+,d2-d7/a2/a3
rts
L1331
dc.b 'glReadPixels',0
L1333
dc.b 'glReadPixels(format)',0
L1332
dc.b 'glReadPixels(pixels)',0
END